Project中添加了太多Firebase库

时间:2016-10-18 18:54:21

标签: android firebase

我正在使用Android Studio,我想使用Firebase Analytics和Firebase Ads(AdMob)。我遵循了所有可用的文档,并在我的应用程序级gradle文件中的依赖项部分中添加了以下内容:

compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.firebase:firebase-ads:9.6.1'

但是,我注意到在项目的“外部库”下,有大量的Firebase库我不想使用(见图)。

External Libraries

我不知道所有这些是如何进入项目工作区的,如果它们将包含在构建中,并且我可以继续并删除它们。

任何帮助表示感谢。

2 个答案:

答案 0 :(得分:1)

你不应该拥有这组依赖项的所有内容,但是你会有一些额外的。

你可以运行:

  ./gradlew app:dependencies

(假设您的模块被调用" app")以查看依赖项列表。对我来说,这导致以下列表。

+--- com.google.firebase:firebase-core:9.6.1 | \--- com.google.firebase:firebase-analytics:9.6.1 | +--- com.google.android.gms:play-services-basement:9.6.1 | | \--- com.android.support:support-v4:24.0.0 -> 24.2.1 (*) | +--- com.google.firebase:firebase-common:9.6.1 | | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | | \--- com.google.android.gms:play-services-tasks:9.6.1 | | \--- com.google.android.gms:play-services-basement:9.6.1 (*) | \--- com.google.firebase:firebase-analytics-impl:9.6.1 | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | +--- com.google.firebase:firebase-iid:9.6.1 | | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | | \--- com.google.firebase:firebase-common:9.6.1 (*) | \--- com.google.firebase:firebase-common:9.6.1 (*) \--- com.google.firebase:firebase-ads:9.6.1 +--- com.google.android.gms:play-services-ads:9.6.1 | +--- com.google.android.gms:play-services-ads-lite:9.6.1 | | \--- com.google.android.gms:play-services-basement:9.6.1 (*) | +--- com.google.android.gms:play-services-base:9.6.1 | | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | | \--- com.google.android.gms:play-services-tasks:9.6.1 (*) | +--- com.google.android.gms:play-services-clearcut:9.6.1 | | +--- com.google.android.gms:play-services-base:9.6.1 (*) | | \--- com.google.android.gms:play-services-basement:9.6.1 (*) | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | \--- com.google.android.gms:play-services-gass:9.6.1 | \--- com.google.android.gms:play-services-basement:9.6.1 (*) \--- com.google.firebase:firebase-analytics:9.6.1 (*)

这里的所有库都符合预期 - 它包含Firebase各个部分的公共代码,核心的Analytics库和play-services-ads库。

确保您在更改Gradle文件后完成了干净的构建,并检查可能依赖于其他com.google.firebase库(例如FirebaseUI)的任何内容。

答案 1 :(得分:0)

不需要的Firebase库实际上来自Google Play服务依赖(编译' com.google.android.gms:播放服务:9.6.1')。

我不熟悉Android和所有这些库,所以我无法看到Google Play服务和Firebase库之间的关系,这就是为什么我在我的网站上没有提到它问题

无论如何,我删除了它,并从项目中删除了所有不需要的Firebase库。现在,我只是为我的应用添加特定的Google Play服务API,而不是整个Google Play依赖项。