Android Studio、Gradle、Fabric Crashlytics - 我们有一个非常常见的设置。我们在 build.gradle
中有通常的 compile
行:
compile('com.crashlytics.sdk.android:crashlytics:2.6.5@aar') {
transitive = true;
}
在我们的 Application
子类中,实例化行:
Fabric.with(this, new Crashlytics());
一切都好。长期工作。现在我们要使用 Fabric Answers。
这是令人困惑的部分 - 如果我将实例化行编辑为:
Fabric.with(this, new Crashlytics(), new Answers());
..它有效。我预计我需要将以下内容添加到build.gradle
,正如他们的安装文档建议的那样:
compile('com.crashlytics.sdk.android:answers:1.3.10@aar') {
transitive = true;
}
但是 Answers
类似乎可以在有或没有此导入的情况下找到。
所以,我想我的问题是:
- 我需要两者 Gradle
compile
条目吗?或者com.crashlytics.sdk.android:crashlytics:2.6.5@aar
是一个已经包含答案的超集吗? - 当我同时需要 Crashlytics + Answers 时,
Fabric.with(this, new Crashlytics(), new Answers());
是实例化事物的正确方法吗?
我正在使用两个 Gradle 导入,但即使我没有第二个导入,它似乎也可以正常编译。有点困惑为什么。
谢谢!
更新
正如已接受的答案所述,仅拥有 Fabric.with(this, new Crashlytics());
就足够了。
深入研究 Crashlytics
类,看起来它实际上实例化了一些东西:
this(new Answers()、new Beta()、new CrashlyticsCore());
..所以就这样吧!额外的 Gradle 导入 + Fabric 实例化参数是多余的。
最佳答案
您不需要将 Answers 依赖项显式添加到 build.gradle 文件中,因为它已默认包含在 Fabric 中。所以你的第一行就很好 Fabric.with(this, new Crashlytics());
关于android-gradle-plugin - 如果我已经在使用 Crashlytics,是否需要在 Android Studio 中为 Fabric Answers 添加 gradle 导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40967522/