Fat*_*tie 11 ios firebase-analytics
在一个广泛使用 Firebase 的大型应用程序中,我正在尝试分析,
-FIRDebugEnabled设置得很好。
设备上的日期/时间设置正确。
我已经尝试了所有模拟器、系留设备,甚至构建到 TestFlight。
所需的东西在应用程序启动中..
FirebaseConfiguration.shared.setLoggerLevel(.max)
FirebaseApp.configure()
// helps Analytics get going:
AnalyticsConfiguration.shared().setAnalyticsCollectionEnabled(true)
Run Code Online (Sandbox Code Playgroud)
同样,Firebase 实时和数据库自始至终都能完美运行。
所以使用Analytics.logEvent#...
请注意,这些项目完美地显示在 Xcode 控制台中:
2018-07-24 08:27:23.868 Blah[7501] <Debug> [Firebase/Analytics][I-ACS023105] Event is
not subject to real-time event count daily limit. Marking an event as
real-time. Event name, parameters: select_content, {
firebase_event_origin (_o) = app;
firebase_realtime (_r) = 1;
item_name = tapMyProfile;
firebase_screen_class (_sc) = Blah.SomeScreen;
firebase_debug (_dbg) = 1;
firebase_screen_id (_si) = 8314738347840858914;
item_id = Blah-tapMyProfile;
content_type = tapMyProfile;
}
Run Code Online (Sandbox Code Playgroud)
或者 ...
2018-07-24 08:56:12.393306-0500 Blah[7501:135963] [Firebase/Analytics][I-ACS023073] Debug
mode is enabled. Marking event as debug and real-time. Event name,
parameters: select_content, {
firebase_event_origin (_o) = app;
firebase_screen (_sn) = MyProfile;
item_name = tapCamera;
firebase_realtime (_r) = 1;
firebase_screen_class (_sc) = Blah.OldDevDotScreen;
firebase_debug (_dbg) = 1;
firebase_screen_id (_si) = 8314738347840858915;
item_id = Blah-tapCamera;
content_type = tapCamera;
}
Run Code Online (Sandbox Code Playgroud)
请注意tapMyProfile或tapCamera,这是我的自定义事件之一Analytics.logEvent#
这样的分析似乎确实运行良好:
因此,这些数字每隔几个小时更新一次等等。
同样,每个项目都完美地出现在 Xcode 控制台中。
但无论如何,Firebase 调试控制台上都不会显示任何内容!
没有什么!
到底是什么问题呢?
(此外,我已经等了一天或更长时间,它们也没有显示为事件。)
怎么在调试中什么也没有出现???
Sha*_*ank 15
TL:DR - 从设备/模拟器中删除您的应用程序,从 XCode 重建并启动。
尽管 Firebase 和 Firebase Analytics 似乎设置得非常完美,但我也遇到了完全相同的问题。
我还无法给出确切的逻辑解释来说明为什么会起作用,但是在大约 5 分 30 分的 Firebase 事件教程中给出了一个提示。
他提到 -FIRAnalyticsDebugEnabled 设置已保存到磁盘。
因此,在配置和集成 Firebase 后,我运行了已安装的应用程序来测试一切正常,但 Firebase 控制台没有向我显示任何应用程序事件消息。
最好仔细检查一下您在发送事件时没有使用特殊字符,也没有超过字符阈值,但是即使您犯了这些错误,您也应该看到 screen_open、app_open、user_engagement 的默认事件没有显示我。
我唯一的理论是,从已安装的状态启动应用程序不会影响 -FIRAnalyticsDebugEnabled 的新设置。
因此,当我删除应用程序、重新构建并从 XCode 运行时,事件开始出现。

最后,在测试时,您可能会使用另一台设备,您可能会想,我在前一个设备上看到了我的事件,但下一个设备没有任何反应,这让我困惑了一会儿,记得切换设备

然而,总而言之,我可以说这种行为远不可靠,因为在一段时间(2-3小时)后,当我再次运行我的应用程序时,Firebase控制台上再次没有显示任何内容,就好像 -FIRAnalyticsDebugEnabled 已被禁用一样。
删除并重新安装又有效。
2022 年更新
上述步骤仍然适用。关于为什么您可能看不到您似乎已成功记录的事件的原因,仅补充两点:
执行清理+构建+运行
有些keywords似乎没有被记录,因为它们可能已经被分析框架使用。例如,当我尝试跟踪搜索事件时,我的参数字典中的键之一是,keyword这似乎从未被跟踪,所以使用其他东西并尝试一下
| 归档时间: |
|
| 查看次数: |
14967 次 |
| 最近记录: |