UnmetDependencyException: отсутствует идентификатор сборки Crashlytics - PullRequest
0 голосов
/ 19 сентября 2019

После добавления идентификатора приложения Fabric в манифест приложения и инициализации Fabric в файле класса приложения я столкнулся с другим исключением со следующей трассировкой стека.

java.lang.RuntimeException: Unable to create application fibamlscan.app.App: io.fabric.sdk.android.services.concurrency.UnmetDependencyException: The Crashlytics build ID is missing. This occurs when Crashlytics tooling is absent from your app's build configuration. Please review Crashlytics onboarding instructions and ensure you have a valid Crashlytics account.
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6309)
    at android.app.ActivityThread.access$1200(ActivityThread.java:241)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7156)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975)
 Caused by: io.fabric.sdk.android.services.concurrency.UnmetDependencyException: The Crashlytics build ID is missing. This occurs when Crashlytics tooling is absent from your app's build configuration. Please review Crashlytics onboarding instructions and ensure you have a valid Crashlytics account.
    at com.crashlytics.android.core.CrashlyticsCore.onPreExecute(CrashlyticsCore.java:243)
    at com.crashlytics.android.core.CrashlyticsCore.onPreExecute(CrashlyticsCore.java:211)
    at io.fabric.sdk.android.InitializationTask.onPreExecute(InitializationTask.java:44)
    at io.fabric.sdk.android.services.concurrency.AsyncTask.executeOnExecutor(AsyncTask.java:611)
    at io.fabric.sdk.android.services.concurrency.PriorityAsyncTask.executeOnExecutor(PriorityAsyncTask.java:43)
    at io.fabric.sdk.android.Kit.initialize(Kit.java:69)
    at io.fabric.sdk.android.Fabric.initializeKits(Fabric.java:466)
    at io.fabric.sdk.android.Fabric.init(Fabric.java:410)
    at io.fabric.sdk.android.Fabric.setFabric(Fabric.java:368)
    at io.fabric.sdk.android.Fabric.with(Fabric.java:339)
    at fibamlscan.app.App.onCreate(App.java:28)
    at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1158)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6304)
    at android.app.ActivityThread.access$1200(ActivityThread.java:241) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807) 
    at android.os.Handler.dispatchMessage(Handler.java:106) 
    at android.os.Looper.loop(Looper.java:214) 
    at android.app.ActivityThread.main(ActivityThread.java:7156) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975) 

Я попробовал буквально все возможное, как предложено в stacktrace.но ничего не помогло избавиться от этой ошибки.

Я также проверил в своей папке сборки, что идентификатор сборки создается после каждой сборки, но я не могу понять, почему Crashlytics не может использовать этот идентификатор сборки.

Это идентификатор сборки, автоматически генерируемый внутри res / values ​​папки сборки.

    <?xml version="1.0" encoding="utf-8" standalone="no"?>
    <resources xmlns:tools="http://schemas.android.com/tools">
<!--
  This file is automatically generated by Crashlytics to uniquely 
  identify individual builds of your Android application.

  Do NOT modify, delete, or commit to source control!
-->
    <string tools:ignore="UnusedResources,TypographyDashes" name="com.crashlytics.android.build_id" translatable="false">1f3b35bb-2686-4f3f-91fe-87e8a05e2f71</string>
    </resources>

1 Ответ

0 голосов
/ 19 сентября 2019

Fabric / Firebaser здесь -

Обычно это связано с проблемой настройки инструкций по установке Fabric.Убедитесь, что ext.enableCrashlytics = false не установлено в любой конфигурации сборки, в которой вы вызываете оператор Fabric.with.

Также убедитесь, что apply plugin 'io.fabric' находится в вашем build.gradle после apply plugin: 'com.android.application.

Наконец, если вы используете гораздо более старые версии Fabric или Crashlytics, попробуйте обновить эти зависимости.Полные инструкции и информация здесь: https://fabric.io/kits/android/crashlytics/install.

...