我想将Firebase分析用于我的一个库模块。我想以这样一种方式编程:配置文件(google-services.json
)应该可以从任一客户端应用程序文件夹访问,或者从客户端配置相同。
有没有办法实现上述方案?
提前致谢。
答案 0 :(得分:2)
我找到了有趣的解决方法。请尝试以下方法:
将您的google-services.json
放入任何示例应用google provides以进行Firebase集成。编译它。
查看路径app/build/generated/res/google-services/debug/values/
应该生成values.xml
文件,其中包含您所描述的错误中提到的一堆字符串。将这些字符串复制到项目的value.xml文件中。就是这样。
答案 1 :(得分:1)
您可以手动初始化库项目配置,如下所示
如需了解更多信息,请参阅working-with-multiple-firebase-projects-in-an-android-app
同时了解how-does-firebase-initialize-on-android以了解; Firebase模块如何自行初始化。
对于使用Firebase的Android应用,有一个中央FirebaseApp对象 管理所有Firebase API的配置。这是 当您的应用是时,内容提供商会自动初始化 推出,您通常永远不需要与它进行交互。然而, 当你想从一个应用程序访问多个项目时,你会 需要一个独特的FirebaseApp来单独引用每个。它的 由你来初始化除默认情况以外的实例 Firebase为您创造。
FirebaseOptions options = new FirebaseOptions.Builder()
.setApplicationId("1:530266078999:android:481c4ecf3253701e") // Required for Analytics.
.setApiKey("AIzaSyBRxOyIj5dJkKgAVPXRLYFkdZwh2Xxq51k") // Required for Auth.
.setDatabaseUrl("https://project-1765055333176374514.firebaseio.com/") // Required for RTDB.
.build();
FirebaseApp.initializeApp(this /* Context */, options, "secondary");
希望我已经回答了你的问题。