android - 将所有 Firebase Analytics 捕获的事件发送到我们自己的服务器,然后将事件从该服务器转发到 Firebase
问题描述
我们需要通过服务调用将 Firebase 分析捕获的所有 Android 应用程序事件发送到我们自己的服务器。然后将这些事件转发到 Firebase 分析。甚至可能吗?如何才能做到这一点?这似乎不是正确的方法,但这是要求。
解决方案
将 Google Analytics for Firebase 的依赖项添加到您的应用级 build.gradle 文件中:
implementation 'com.google.firebase:firebase-core:16.0.1'
com.google.firebase.analytics.FirebaseAnalytics
在活动顶部声明对象
private FirebaseAnalytics mFirebaseAnalytics;
MainActivity.java
然后在 onCreate() 方法中初始化
// Obtain the FirebaseAnalytics instance.
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
MainActivity.java
记录事件
创建 FirebaseAnalytics 实例后,您可以使用它通过 logEvent() 方法记录预定义或自定义事件。您可以在 FirebaseAnalytics.Event 和 FirebaseAnalytics.Param 参考文档中探索预定义的事件和参数。
当用户单击应用程序中的特定元素时,以下代码会记录一个 SELECT_CONTENT 事件。
Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
这是您可以记录的事件
这是参数
然后在检索到事件后,您可以将其发送到您自己的服务器,然后您可以使用自己的逻辑来发布它们。
推荐阅读
- css - 为什么 Am Chars 和弦图会切割标签文本?
- r - 如何根据 R 中的某些模式导入大量数据集
- sql - 输入“来自”不匹配。期待:'on','using' 在 Athena
- .net - 更新多目标项目的包引用
- c# - 如何强制 Visual Studio 2022 创建带有命名空间和类的控制台项目(就像过去的好日子一样)?
- flutter - 我们可以与从事同一项目的其他开发人员共享我的“API KEY”吗?
- c - Windows API:可以以编程方式移动 Windows IME 输入框吗?
- multilingual - 如何削减 Huggingface 上共享的预训练多语言模型?
- css - 未检测到 xpath 跨度
- batch-file - 批处理文件从另一个文件的文件中添加一列,第一个字段匹配,第二个文件具有大列