完全从Android应用程序中删除firebase分析

Kan*_*yan 16 android firebase firebase-analytics

我在我的应用程序中添加了firebase分析,以便尝试一下.我按照官方指南中的步骤进行操作.

现在我决定反对它.我已经撤消了我做的任何事情来添加它.(从项目级别和应用程序级别build.gradle中删除了条目;从源代码中删除了所有用法.)

但我仍然得到像日志

I/FirebaseInitProvider: FirebaseApp initialization successful
Run Code Online (Sandbox Code Playgroud)

当我的应用运行时.

这让我相信我没有完全删除它.这真的是我现在关注的问题,因为我的应用程序超出了方法计数限制,我不得不启用multidex.

如何从我的应用程序中完全删除firebase?

ישו*_*ותך 18

如果要完全移除firebase,可以通过反转设置步骤来实现.

  1. 从项目gradle中删除classpath"com.google.gms:google-services:3.0.0".
  2. 从您的app build.gradle中删除编译'com.google.firebase:firebase-core:9.2.0'.
  3. 从build.gradle底部删除apply plugin:'com.google.gms.google-services'.
  4. 从项目中删除FirebaseService代码.
  5. 从您的项目中删除google-services.json.
  6. 从您的清单中删除谷歌密钥.
  7. 从您的资源值中删除谷歌密钥.
  8. 清洁项目.
  9. 建立项目.
  10. 从测试设备中删除已安装的应用程序,然后重新安装.

- 更新 -

来自/sf/answers/2656169631/:

我建议你在app中使用gradle排除firebase组module build.gradle,你可以依赖添加它:

compile('com.google.android.gms:play-services-ads:9.0.2') {
    exclude group: 'com.google.firebase', module: 'firebase-common'
}

compile('com.google.android.gms:play-services-gcm:9.0.2') {
    exclude group: 'com.google.firebase', module: 'firebase-common'
}
Run Code Online (Sandbox Code Playgroud)

或者,只需应用全局排除配置(请记住,这应该在任何groovy函数之外),如下所示:

configurations {
    all*.exclude group: 'com.google.firebase', module: 'firebase-common'
}
Run Code Online (Sandbox Code Playgroud)


Kan*_*yan 11

添加

configurations {
    all*.exclude group: 'com.google.firebase', module: 'firebase-core'
    all*.exclude group: 'com.google.firebase', module: 'firebase-iid'
}
Run Code Online (Sandbox Code Playgroud)

从包含firebase的app/app.iml中删除所有行(并且它们不会再次自动添加)并从生成的代码和中间输出中删除所有firebase库.

与之前的答案相比,这可以从apk大小中剔除另外87,000个字节.

虽然我仍然不明白为什么我应该添加更多代码来撤消添加内容.这可能是构建系统中的一个错误.

@isnotmenow:非常感谢你指点我的方向.