【发布时间】:2019-06-06 06:50:52
【问题描述】:
我正在构建一个 Android 应用,它使用 fabric-crashlytics 来记录设备中的所有崩溃。 这行代码:
Crashlytics crashlyticsKit = new Crashlytics.Builder()
.core(new CrashlyticsCore.Builder().disabled(false).build())
.build();
Fabric.with(this, crashlyticsKit);
正在与 Bazel 崩溃,但是,当我将此值设置为“true”..(即,我正在禁用 Crashlytics )时,此应用程序的 Bazel 构建工作正常。 但是,如果我正在构建一个普通的 android 应用程序,它不会崩溃,该值为“true”或“false”。但是,在 Bazel 中,构建在启动时完全崩溃。 错误是:
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: .
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . | |
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . | |
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . | |
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . \ | | /
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . \ /
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . \ /
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . \/
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: .
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: This app relies on Crashlytics. Please sign up for access at https://fabric.io/sign_up,
install an Android build tool and ask a team member to invite you to this app's organization.
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: .
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . /\
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . / \
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . / \
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . / | | \
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . | |
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: . | |
2019-01-11 15:55:55.808 19850-19850/com.sensennetworks.senanpr E/CrashlyticsCore: .
2019-01-11 15:55:55.812 19850-19850/com.sensennetworks.senanpr E/AndroidRuntime: FATAL EXCEPTION: main
我如何正确集成 Fabric 和 crashlytics 以便它们在 Bazel 中工作?
我在 BUILD 文件中的依赖项是:
deps = [
":tensorflow_native_libs",
"//tensorflow/contrib/lite/java:tensorflowlite",
"@com_google_code_gson_gson//jar",
"@com_mcxiaoke_volley_library//jar",
#"@com_sun_mail_android_activation//jar",
#"@com_sun_mail_android_mail//jar",
gmaven_artifact("com.google.android.gms:play-services-location:aar:15.0.1"),
gmaven_artifact("com.android.support:appcompat-v7:aar:26.1.0"),
gmaven_artifact("com.android.support:design:aar:26.1.0"),
gmaven_artifact("com.android.support:recyclerview-v7:aar:26.1.0"),
gmaven_artifact("com.android.support:support-v4:aar:26.1.0"),
gmaven_artifact("io.fabric.sdk.android:fabric:aar:1.3.17"),
gmaven_artifact("com.crashlytics.sdk.android:crashlytics:aar:2.9.0"),
#gmaven_artifact("com.crashlytics.sdk.android:crashlytics-core:aar:2.6.4"),
gmaven_artifact("com.google.firebase:firebase-core:aar:15.0.2")]
【问题讨论】:
-
目前 Bazel 尚不支持 Crashlytics 集成,因为它依赖于从 io.fabric Gradle 插件对构建进行的一些操作。 Bazel 不调用该插件,因此应用程序在运行时由于某些文件丢失而崩溃。我们目前正在努力使这项工作与 Bazel 一起工作,请关注该问题以获取更多信息。
标签: android crashlytics bazel google-fabric crashlytics-android