Firebase Analytics(Android):Logcat可见自定义事件但控制台不显示
看来你遇到了Firebase自定义事件在控制台不显示,但adb能抓到日志的问题——这情况我碰到好多次了,大概率是数据延迟或者控制台配置的小问题,咱们一步步排查:
先等一等!Firebase数据不是实时的
自定义事件(包括标准事件的自定义参数)通常需要2-24小时才能在控制台显示出来,尤其是你刚集成或者刚添加的新事件。adb能抓到日志说明事件已经成功触发上报了,先耐心等几个小时再去控制台刷新看看。如果着急测试,可以开启调试模式加速上报:adb shell setprop debug.firebase.analytics.app 你的应用包名开启后,数据会在几分钟内同步到控制台的「DebugView」标签页,这里能实时看到所有事件。
检查你是不是混淆了「自定义事件」和「标准事件的自定义参数」
从你的adb日志来看:Logging event (FE): select_content, Bundle[{item_name=foldersactivity_oncreate...}],这里的select_content是Firebase的标准事件,而foldersactivity_oncreate是你添加的自定义参数。这种情况下,自定义参数默认不会在控制台事件列表里显示,你需要手动去控制台配置:- 进入Firebase控制台的Analytics → 事件页面
- 找到
select_content事件,点击它进入详情页 - 点击右上角的「编辑参数」,把
item_name添加为要展示的参数 - 等数据同步后,就能在这个事件的详情里看到这个参数的统计了。
如果确实是自定义事件没显示,检查事件命名合规性
如果你是自己定义了事件名(比如直接把foldersactivity_oncreate作为事件名上报),那要确保事件名符合Firebase的规则:- 必须以字母开头
- 只能包含字母、数字、下划线
- 长度不超过40个字符
如果命名违规,Firebase会自动丢弃这个事件,控制台自然看不到。
检查数据收集是否正常开启
确认你的应用没有禁用Analytics收集:- 查看AndroidManifest.xml里有没有设置
firebase_analytics_collection_enabled="false",如果有改成true - 代码里有没有调用
FirebaseAnalytics.getInstance(context).setAnalyticsCollectionEnabled(false),如果有去掉或者改成true
- 查看AndroidManifest.xml里有没有设置
核对项目配置
确保你的google-services.json是从Firebase控制台正确下载的,并且应用的包名和控制台里注册的包名完全一致——包名不匹配的话,数据会上报到错误的项目,自然在当前控制台看不到。
内容的提问来源于stack exchange,提问作者toto_tata

