Android Studio,Gradle,Fabric Crashlytics - 我们有一个非常常见的设置。我们在compile
中有通常的build.gradle
行:
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
类似乎可以在有或没有导入的情况下找到。
所以,我想我的问题是:
compile
条目?或com.crashlytics.sdk.android:crashlytics:2.6.5@aar
是否已包含答案的超集?Fabric.with(this, new Crashlytics(), new Answers());
是实例化事物的正确方法吗?我正在使用两个 Gradle导入,但即使我没有第二个,它似乎也可以编译好。有点困惑为什么。
谢谢!
更新
正如接受的答案所述,单独Fabric.with(this, new Crashlytics());
就足够了。
深入研究Crashlytics
类,看起来它实际上实例化了一些东西:
this(new Answers(), new Beta(), new CrashlyticsCore());
..所以你去!额外的Gradle import + Fabric实例化参数是多余的。
答案 0 :(得分:2)
您不需要将明确的Answers依赖项添加到build.gradle文件中,因为它已默认包含在Fabric中。所以你的第一行很好Fabric.with(this, new Crashlytics());