gpt4 book ai didi

android - 带有自定义 FirebaseOptions 初始化方法的 Firebase Google Analytics

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:40:13 28 4
gpt4 key购买 nike

我必须为我的 Android 应用程序添加简单的 Firebase Google Analytics。

我需要在运行时选择应用的 Firebase 项目。

“这种情况很少见,但有时应用程序必须能够在运行时选择其 Firebase 项目。这意味着您的应用程序无法使用由合并到您的应用程序中的 FirebaseInitProvider 提供的自动初始化。在那种情况下,解决方案有两个任务。”

引用链接:https://firebase.googleblog.com/2017/03/take-control-of-your-firebase-init-on.html

所以,在我的例子中,我做了如下操作:

  1. 创建了一个应用程序类:

    public class MyApplicationClass extends Application {
    @Override
    public void onCreate() {
    super.onCreate();
    FirebaseOptions.Builder builder = new FirebaseOptions.Builder().setApplicationId("1:5478125639014:android:054aa87g102b94aa5").setApiKey("ABcdXyzpQrst_8tlItnC5rcbgxkK_PqrstGWsTKo");
    FirebaseApp.initializeApp(this, builder.build());
    }
  2. 添加了必需的 list Internet 权限。

  3. 添加依赖项:

    实现“com.google.firebase:firebase-analytics:17.1.0”

问题是我在那里看不到任何分析数据,并且在 Google Analytic 的最后一步中应用程序未连接。

可能有什么问题或有待解决的问题?

最佳答案

我知道这不是您所期望的答案,但可悲的现实是您无法动态初始化您的 Firebase Analytics

在官方 Firebase 存储库中,您可以看到问题 https://github.com/firebase/quickstart-android/issues/769那里的官方回答是“这目前正在按预期工作,Analytics SDK 不允许在运行时配置 App ID”。我认为从那以后它没有改变。

我知道这些帖子在那种情况下可能听起来令人困惑: https://firebase.googleblog.com/2017/03/take-control-of-your-firebase-init-on.html https://firebase.google.com/docs/projects/multiprojects

但预期用例具有不同的 FirebaseApp 配置(例如,针对不同的数据库)和不同的 FirebaseAnalytics 配置。 Firebase Analytics 只是 Firebase 旗下的众多产品之一。

因此您不需要使用 gradle 插件,但您仍然需要拥有名为 google_app_id 的字符串资源,其中包含您的 Firebase 应用程序 ID,并且仅用于配置 FirebaseAnalytics。

这并不意味着 FirebaseAnalytics 的动态初始化根本无法完成,但它需要逆向工程、hacky 解决方案并且它很脆弱 - 简而言之,可能不是一个好主意。

我不确定你的用例是什么,但如果你只想延迟 Firebase Analytics 初始化,你可以考虑在开始时禁用它:https://firebase.google.com/docs/analytics/configure-data-collection?platform=android

关于android - 带有自定义 FirebaseOptions 初始化方法的 Firebase Google Analytics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57703840/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com