将Firebase分析包含在库中。

9
我有多个包含自定义库的Android应用程序。这个库是应用程序的核心,每个应用程序只包含一个扩展自库中活动的主活动,以确定特定应用程序的风味。
现在我想在整个应用程序中包含Firebase Analytics,包括库,但我无法理解如何操作。google-services.json文件应该针对每个应用程序不同,但如果没有包含库包名称的google-services文件,我将无法包含google-services插件。
希望你有一些想法。
谢谢!

我很想听取其他人的意见,但据我所知,Firebase目前不支持此功能。 - Sistr
我认为我可能已经找到了一个解决方案,但由于数据尚未到位,我不能确定。等我确认后再发布。 - Anddev
1个回答

9
你应该将google-services.json文件添加并将google-services插件应用于你的app模块,而不是库项目。
插件生成的大多数资源是动态使用的,并且对于库编译来说是不必要的。然而,如果库明确使用其中一个资源(因此无法在没有它的情况下编译),库可以在其自己的strings.xml文件中包含一个占位符资源,最终将被正确配置的应用程序覆盖。

1
这几乎就是我所做的。我按照教程在应用程序模块中设置了所有内容。然后我在库的build.gradle中添加了compile_'com.google.firebase:firebase-core:9.4.0'_。一切似乎都正常工作,我可以在Firebase控制台中看到我的事件。我忘了提到我是从库中发送我的事件的。 - Anddev
嗨@Anddev,我有一个由我构建的库(myLibrary)。我已将myLibrary集成到我的一个项目中。库和项目都有分析功能。我可以在项目中看到事件但无法在库中看到。我在Firebase中为库和项目拥有不同的项目。你能帮帮我吗? - Tara
嗨@Tara,我不再有访问代码库的权限了,自从我发帖以来就没有开发需要在Android中使用自定义库的任何东西,所以恐怕我不能提供太多帮助。我记得的是必须将Firebase添加到库的build.gradle中。如果您同时从库和项目中使用分析功能,我猜您需要为每个功能使用单独的密钥。 - Anddev
感谢@Anddev的回复。但我想澄清一下,如果有人回应!我已经在不同的帐户中为firebase创建了两个单独的项目(项目和库)。由于我有不同的项目和不同的帐户,因此我将拥有不同的json和密钥。 - Tara

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接