Sha*_*zal 6 android crashlytics twitter-fabric
我正在使用com.crashlytics.sdk.android:crashlytics:2.3.2@aarcrashlytics版本,如果用户选择退出,我会禁用崩溃报告.
我尝试了这个解决方案,但它仍然没有工作,崩溃报告仍然被发送到Fabric.
我这样做:
Preference errorReportingEnabled = findPreference(MatlistanPrefs.BUGREPORTS_SEND_AUTOMATICALLY);
    errorReportingEnabled.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
        @Override
        public boolean onPreferenceChange(Preference preference, Object newValue) {
            Boolean value = (Boolean) newValue;
            Fabric.with(DataCollectionSettingsActivity.this, new Crashlytics.Builder().
                    core(new CrashlyticsCore.Builder().disabled(!value).build())
                    .build());
            return true;
        }
    });
这个问题有没有解决方案?
谢谢.
小智 5
初始化Fabric会创建一个单例实例,并在您调用时返回相同的实例Fabric.with(...).因此,您的代码内部onPreferenceChange对Fabric类没有影响.
解决此问题的唯一方法是,如果库本身提供启用或禁用崩溃的方法.因此,up-till now(crashlytics:2.5.2)没有解决方案在运行时启用/禁用crashlytics.你必须在启动时这样做:
Fabric.with(this, new Crashlytics.Builder()
    .core(new CrashlyticsCore.Builder()
    .disabled(true).build()).build());