无法为Android上的调试禁用Crashlytics

无法为Android上的调试禁用Crashlytics,android,crashlytics,twitter-fabric,Android,Crashlytics,Twitter Fabric,我在android studio 2.3.2上严格遵循了这些步骤,在调试版本中禁用Crashlytics 我的相关应用程序/build.gradle buildTypes { debug { applicationIdSuffix '.debug' versionNameSuffix '-DEBUG' // Disable fabric build ID generation for debug buil

我在android studio 2.3.2上严格遵循了这些步骤,在调试版本中禁用Crashlytics

我的相关应用程序/build.gradle

 buildTypes {
        debug {
            applicationIdSuffix '.debug'
            versionNameSuffix '-DEBUG'
            // Disable fabric build ID generation for debug builds
            ext.enableCrashlytics = false
            testCoverageEnabled = false
            debuggable true
       }
  }
我找到了这个堆栈跟踪

Error reading Beta build properties                                                                     java.io.FileNotFoundException: crashlytics-build.properties
                                                                     at android.content.res.AssetManager.openAsset(Native Method)
                                                                     at android.content.res.AssetManager.open(AssetManager.java:347)
                                                                     at android.content.res.AssetManager.open(AssetManager.java:321)
                                                                     at com.crashlytics.android.beta.Beta.loadBuildProperties(Beta.java:172)
                                                                     at com.crashlytics.android.beta.Beta.doInBackground(Beta.java:75)
                                                                     at com.crashlytics.android.beta.Beta.doInBackground(Beta.java:30)
                                                                     at io.fabric.sdk.android.InitializationTask.doInBackground(InitializationTask.java:63)
                                                                     at io.fabric.sdk.android.InitializationTask.doInBackground(InitializationTask.java:28)
                                                                     at io.fabric.sdk.android.services.concurrency.AsyncTask$2.call(AsyncTask.java:311)
                                                                     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
                                                                     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:428)
                                                                     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
                                                                     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
                                                                     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
                                                                     at java.lang.Thread.run(Thread.java:761)

确保导入了特定于应用程序包名称的
BuildConfig
。 我想到的一种可能性是,可能是您意外地为某个库导入了
BuildConfig

因此,当这行代码运行时:

Crashlytics crashlyticsKit = new Crashlytics.Builder()
                .core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build())
                .build();
它实际上指向了一个不同的
BuildConfig
,因为有多个in项目,
BuildConfig.DEBUG
最终为false


这只是一个猜测,但可能会意外出错。

确保导入了特定于应用程序包名称的
BuildConfig
。 我想到的一种可能性是,可能是您意外地为某个库导入了
BuildConfig

因此,当这行代码运行时:

Crashlytics crashlyticsKit = new Crashlytics.Builder()
                .core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build())
                .build();
它实际上指向了一个不同的
BuildConfig
,因为有多个in项目,
BuildConfig.DEBUG
最终为false


这只是一个猜测,但可能会意外出错。

您是否执行了“您可以在运行时仅使用以下代码禁用调试版本的工具包:”步骤也一样。确切地说是@DaveThomasMike from Fabric here。您是否看到在此流程中创建了crashlytics-build.properties文件?您是否可以在应用程序的onCreate()中共享更多应用程序的build.gradle和Fabric的init?您是否执行了“您可以在运行时仅使用以下代码禁用用于调试构建的工具包:”步骤也一样。这里正好是@DaveThomasMike from Fabric。您是否看到在此流程中创建了crashlytics-build.properties文件?您能否在应用程序的onCreate()中共享更多应用程序的build.gradle和Fabric的init?