我正试图在android中使用两个不同的Firebase项目,一个用于FCM,另一个用于Crashlytics(比如FCM的ProjectA和Crashlycs的ProjectB(。但这对我不起作用。
我正在手动初始化Firebase。我的应用程序一启动,我就使用ProjectA配置为FCM初始化Firebase。
val options = FirebaseOptions.Builder()
.setProjectId(fcmOptions[5]!!)
.setApplicationId(fcmOptions[0]!!)
.setApiKey(fcmOptions[1]!!)
.setDatabaseUrl(fcmOptions[2])
.setGcmSenderId(fcmOptions[3])
.setStorageBucket(fcmOptions[4])
.build()
FirebaseApp.initializeApp(this, options)
直到这里一切正常,令牌被生成,我可以接收推送通知。
点击按钮后,我使用ProjectB配置注册Crashlytics。
val options = FirebaseOptions.Builder()
.setProjectId(crashlyticsOptions[5]!!)
.setApplicationId(crashlyticsOptions[0]!!)
.setApiKey(crashlyticsOptions[1]!!)
.setDatabaseUrl(crashlyticsOptions[2])
.setStorageBucket(crashlyticsOptions[4])
.build()
FirebaseApp.initializeApp(this, options, "crashlytics")
在这一步之后,我造成了一些崩溃,这样我就可以在Crashlytics仪表板中看到崩溃。这里的问题是崩溃不会出现在ProjectB Crashlytics控制台下,这正是我所期望的。但这些崩溃出现在FCM的ProjectA下。
以前有没有人尝试过这样的场景,可以帮助我。
Crashlytics不支持使用辅助项目来捕获崩溃。它将只使用默认项目(您初始化的没有名称的项目(。FCM和Analytics是一样的。