feat: make firebase crashlytics optional.

This commit is contained in:
Aunali321
2022-10-15 18:29:50 +05:30
parent 79aca0e579
commit f31a60d9bb
5 changed files with 58 additions and 7 deletions

View File

@ -140,7 +140,7 @@ class SettingsView extends StatelessWidget {
),
_settingsDivider,
SettingsSection(
title: 'settingsView.privacySectionTitle',
title: 'settingsView.logsSectionTitle',
children: <Widget>[
CustomSwitchTile(
padding: const EdgeInsets.symmetric(horizontal: 20.0),
@ -158,6 +158,24 @@ class SettingsView extends StatelessWidget {
value: model.isSentryEnabled(),
onTap: (value) => model.useSentry(value),
),
const SizedBox(height: 20.0),
CustomSwitchTile(
padding: const EdgeInsets.symmetric(horizontal: 20.0),
title: I18nText(
'settingsView.firebaseCrashlyticsLabel',
child: const Text(
'',
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w500,
),
),
),
subtitle:
I18nText('settingsView.firebaseCrashlyticsHint'),
value: model.isCrashlyticsEnabled(),
onTap: (value) => model.useCrashlytics(value),
),
],
),
_settingsDivider,

View File

@ -327,6 +327,16 @@ class SettingsViewModel extends BaseViewModel {
notifyListeners();
}
bool isCrashlyticsEnabled() {
return _managerAPI.isCrashlyticsEnabled();
}
void useCrashlytics(bool value) {
_managerAPI.setCrashlyticsStatus(value);
_toast.showBottom('settingsView.restartAppForChanges');
notifyListeners();
}
Future<int> getSdkVersion() async {
AndroidDeviceInfo info = await DeviceInfoPlugin().androidInfo;
return info.version.sdkInt ?? -1;