【发布时间】:2018-10-10 09:56:12
【问题描述】:
我正在尝试仅通过使用 FirebaseOptions 构建器来初始化 FirebaseApp,就像这样(我只使用 applicationId 和 ApiKey,因为我只想要启动分析):
FirebaseOptions options = new FirebaseOptions.Builder()
.setApplicationId(applicationID) // Required for Analytics.
.setApiKey(apiKey) // Required for Auth.
.build();
FirebaseApp.initializeApp(context, options);
我的项目中没有 google-services.json 文件,我已经像这样在我的 AndroidManifest.xml 中删除了 FirebaseInitProvider:
<provider android:name="com.google.firebase.provider.FirebaseInitProvider"
android:authorities="${applicationId}.firebaseinitprovider"
android:exported="false"
tools:node="remove"/>
我想从我的服务器发送应用程序 ID,因为我需要多个项目,而且我并不关心在应用程序初始化期间是否丢失了某些事件。 启动应用程序时,同时尝试在 Android Studio 调试日志中查看事件,如下所示:
adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC
我得到:Missing google_app_id. Firebase Analytics disabled.
我不想在strings.xml 静态文件中使用 google_app_id,因为我想要多个项目。但是,我尝试在 XML 文件中包含所有应用程序 ID,并尝试在 FirebaseApp.initializeApp 之前使用反射来更改它们,但这似乎不起作用。
【问题讨论】:
-
您甚至可以创建多个 Firebase 项目,每个项目都为具有相同包名的应用定义一个配置吗?为每个应用程序设置不同的包名称怎么样?我试图了解为什么你需要这个。
标签: android firebase-analytics