Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从Google Services 9.0.0中排除Firebase_Android_Google Analytics_Firebase_Android Gradle Plugin_Google Play Services - Fatal编程技术网

Android 从Google Services 9.0.0中排除Firebase

Android 从Google Services 9.0.0中排除Firebase,android,google-analytics,firebase,android-gradle-plugin,google-play-services,Android,Google Analytics,Firebase,Android Gradle Plugin,Google Play Services,我正试图摆脱Firebase,因为它显然包含在最新的谷歌服务中。我正在使用分析,因此我将此依赖项添加到我的build.gradle compile 'com.google.android.gms:play-services-analytics:9.0.0' 当我试图在Google Play上更新我的应用程序时,我注意到两个新的(GCM)权限 com.google.android.c2dm.permission.RECEIVE org.indywidualni.somepackage.permi

我正试图摆脱Firebase,因为它显然包含在最新的谷歌服务中。我正在使用分析,因此我将此依赖项添加到我的
build.gradle

compile 'com.google.android.gms:play-services-analytics:9.0.0'
当我试图在Google Play上更新我的应用程序时,我注意到两个新的(GCM)权限

com.google.android.c2dm.permission.RECEIVE
org.indywidualni.somepackage.permission.C2D_MESSAGE

我发现它们是由于Firebase而自动由新服务添加的。我不使用Firebase,所以我决定将其从项目中排除。我该怎么做?

Firebase团队目前建议您不要试图强制使用Firebase构建的应用程序具有Firebase权限(尽管Android工具使这成为可能)。这些额外的权限不应该造成问题。这是一个关于团队的问题


如果您对这些权限有一个非常具体的问题(除了它们存在的事实),我们确实需要了解这一点,您可以就此提交一份错误报告。

在您的应用程序清单文件中包括以下几行:

  <uses-permission
 android:name="com.google.android.c2dm.permission.RECEIVE"
 tools:node="remove" /> 
  <uses-permission
 android:name="com.somepackage.permission.C2D_MESSAGE"
 tools:node="remove" />

这里有一个解决办法,我想做得更好。如果可能的话,只需跳过库中一些不需要的部分。这实际上只是权限问题。对于整个Firebase及其服务、接收器等,我只是不使用它,而是将其包含在分析中。应用程序大小现在增加了1MB,很多不需要的东西从应用程序开始。我只想要分析。所以我现在不更新到9.0.0。8.4.0对我来说是一个更好的选择,直到我知道如何删除9.0.0中自动添加的内容。如果你阅读firebase talk上的链接讨论,你会发现firebase Analytics实际上需要所有看起来不需要的东西。如果你对一些似乎不必要的事情有具体的问题,请告诉我们。我已经读过了。但我正在学习谷歌分析。不是Firebase分析。这是一项单独的服务。所以我还是不使用Firebase。啊,我现在明白了。对于我来说,现在想想有人根本不想在他们的应用程序中使用Firebase的情况,这是一个很大的环境转变。:-)但我同意这种开销是不受欢迎和不必要的,所以我会把它作为一个问题提出来。我快速查看了一下你的gradle构建,看起来你可以将所有内容合并到一个应用程序中,并带有应用程序和电视的风格。您可能会摆脱buildsystem/dependencies.gradle,因为它都是相同的应用程序级别build.gradle。在一个测试项目中,您可以很容易地对此进行实验,以了解如何更改每种风格的配置(每种风格都可以覆盖通常放在defaultConfig中的内容)。我们如何在删除依赖项的同时设置版本?所有*.exclude组:'com.google.firebase',模块:'firebase common',版本:'9.0.0'不工作!
 configurations {
     all*.exclude group: 'com.google.firebase', module: 'firebase-common'
     all*.exclude group: 'com.google.firebase', module: 'firebase-core'
     all*.exclude group: 'com.google.firebase', module: 'firebase-iid' }