如果我已经在使用 Crashlytics,是否需要在 Android Studio 中为 Fabric Answers 添加 gradle 导入?

Do I need to add gradle import in Android Studio for Fabric Answers if I'm already using Crashlytics?

Android Studio,Gradle,Fabric Crashlytics - 我们有一个非常常见的设置。我们在 build.gradle 中有通常的 compile 行:

compile('com.crashlytics.sdk.android:crashlytics:2.6.5@aar') {
    transitive = true;
}

并且在我们的 Application 子 class 中,实例化行:

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 class 似乎在有或没有此导入的情况下都能找到。

所以,我想我的问题是:

  1. 我需要 两个 Gradle compile 个条目吗?还是 com.crashlytics.sdk.android:crashlytics:2.6.5@aar 已经包含答案的超集?
  2. 当我同时需要 Crashlytics + Answers 时,Fabric.with(this, new Crashlytics(), new Answers()); 是实例化事物的正确方法吗?

我正在使用 both Gradle 导入,但它似乎编译正常,即使我没有第二个。有点困惑为什么。

谢谢!

更新

如已接受的答案所述,仅 Fabric.with(this, new Crashlytics()); 就足够了。

深入研究 Crashlytics class,看起来它实际上实例化了一些东西:

this(new Answers(), new Beta(), new CrashlyticsCore());

.. 好了!额外的 Gradle import + Fabric 实例化参数是多余的。

您不需要明确地将 Answers 依赖项添加到 build.gradle 文件,因为它已经默认包含在 Fabric 中。所以你的第一行没问题 Fabric.with(this, new Crashlytics());