我一直在寻找一种方法,以便在运行时添加google-services.json,因为我们使用相同的基本代码为不同的客户端配置应用程序,因此我们希望在运行时添加google-services.json。
我尝试了几个链接,但无法找到这样的方法。
非常感谢任何帮助。
答案 0 :(得分:1)
google-services.json
实际上从未在运行时读取。在Android应用的构建过程中,google-services.json
中的相关信息会转换为App的XML资源,而 是应用启动时读取的位置。由于构建插件放置值的目标是硬连线的,因此您无法将其配置为具有多组配置数据。
我建议您不要尝试在运行时阅读google-services.json
,而是明确在代码中配置FirebaseApp
实例,如下所示:
// Manually configure Firebase Options
FirebaseOptions options = new FirebaseOptions.Builder()
.setApplicationId("1:27992087142:android:ce3b6448250083d1") // Required for Analytics.
.setApiKey("AIzaSyADUe90ULnQDuGShD9W23RDP0xmeDc6Mvw") // Required for Auth.
.setDatabaseUrl("https://myproject.firebaseio.com") // Required for RTDB.
.build();
现在,您可以确定自己在哪里保留google-services.json
中的相关信息以及应用启动时要使用的信息。
然后:
// Initialize with secondary app.
FirebaseApp.initializeApp(this /* Context */, options, "secondary");
// Retrieve secondary app.
FirebaseApp secondary = FirebaseApp.getInstance("secondary");
// Get the database for the other app.
FirebaseDatabase secondaryDatabase = FirebaseDatabase.getInstance(secondary);
另见: