【问题标题】:Firebase Analytics seemingly works perfect, but just won't show up?Firebase Analytics 看似完美无缺,但不会出现?
【发布时间】:2018-07-24 13:59:48
【问题描述】:

在一个广泛使用 Firebase 的大型应用中,我正在尝试分析,

-FIRDebugEnabled 设置正常。

设备上的日期/时间设置正确。

我已经尝试了所有的模拟器、系留设备,甚至构建到 TestFlight。

需要的东西在应用启动中..

    FirebaseConfiguration.shared.setLoggerLevel(.max)
    FirebaseApp.configure()
    // helps Analytics get going:
    AnalyticsConfiguration.shared().setAnalyticsCollectionEnabled(true)

同样,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;
    }

或者...

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;
}

注意 tapMyProfiletapCamera,这是我来自 Analytics.logEvent#

的自定义事件之一

这样的分析似乎运作良好:

所以,这些数字每隔几个小时就会更新一次,等等。

每个项目再次完美地出现在 Xcode 控制台中..

但无论如何,Firebase 调试控制台上都不会显示任何内容!

什么都没有!

这到底是什么问题?

(另外我已经等了一天或更长时间,它们也没有显示为事件。)

Debug 中怎么什么都没有显示???

【问题讨论】:

  • 我遇到了类似的问题,但我从Dubug device 下拉列表中选择了错误的设备。这对我有用,你最终找到解决问题的方法了吗?
  • 对于物理设备,我们需要做的不仅仅是配置启动参数。在这里回答:stackoverflow.com/questions/43754848/…

标签: ios firebase-analytics


【解决方案1】:

检查您设备的时间设置。时间需要准确。

【讨论】:

  • 问题显示“设备上的日期/时间设置正确”。那么为什么这是公认的答案呢?
【解决方案2】:

TL:DR - 从您的设备/模拟器中删除您的应用,从 XCode 重新构建和启动。

即使 Firebase 和 Firebase Analytics 似乎设置完美,我也遇到了同样的问题。

我还不能给出确切的逻辑解释为什么这会奏效,但是在大约 5 分 30 分时来自这个 Firebase 事件tutorial 的一个提示。

他提到 -FIRAnalyticsDebugEnabled 设置已保存到磁盘。

因此,在配置和集成 Firebase 之后,我运行了我已经安装的应用程序以测试一切正常,但 Firebase 控制台没有向我显示任何应用程序事件消息。

最好仔细检查您在发送事件时没有使用特殊字符并且也没有超过字符阈值,但是即使您犯了这些错误,您也应该看到 screen_open、app_open、user_engagement 的默认事件出现在我面前。

我唯一的理论是,从已安装状态启动应用不会影响 -FIRAnalyticsDebugEnabled 的新设置。

所以当我删除我的应用程序,重新构建并从 XCode 运行时,事件开始出现。

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

但是,总而言之,我可以说这种行为远非可靠,因为在一段时间(2-3 小时)后,当我再次运行我的应用程序时,Firebase 控制台上没有再次出现,就好像 -FIRAnalyticsDebugEnabled 有被禁用了。

再次删除并重新安装。

【讨论】:

  • 非常感谢!在我的手机上重新安装了该应用程序,它开始像魅力一样工作!
  • 很高兴它能帮到你,希望你花在这上面的时间比我少得多!
【解决方案3】:

您是否为您的应用启用了调试视图?

根据文档,在嵌入到 Firebase 控制台 UI 的实时视图和调试视图上启用调试事件存在细微差别。

要在您的开发设备上启用分析调试模式,请在 Xcode 中指定以下命令行参数:

-FIRDebugEnabled

对于 XCode 控制台上 Arguments Passed On Launch 部分的实时日志,添加:

-FIRAnalyticsDebugEnabled.

【讨论】:

  • 我确实做到了,请注意我在上面提到了-FIRDebugEnabled。不过谢谢。问题是,撇开调试使用不谈,它在普通应用程序中不起作用。 ://
【解决方案4】:

这个问题已经很久没有发布了。我已经为这个问题苦苦挣扎了一个多星期。 在我这边一切都很好,我看到它在 Xcode 调试模式下工作,就像你的一样。我的问题是我没有查看 Analytics -> Firebase 控制台中的 DebugView 下的调试视图

这是分析结束时的调试视图:Debug View

Firebase 中的文档在此处:In the firebase documents,但图像已旧。

它在分析 -> 调试视图中

希望这会对某人有所帮助!

【讨论】:

    【解决方案5】:

    只需从此“DebugDevice”下拉菜单中选择您想要的设备。它在左上角。

    (这让我发疯了几个小时!我希望 Google 能够改进 Firebase 的 UI)

    【讨论】:

      【解决方案6】:

      确保记录的事件名称超过 40 个字符,事件名称和参数名称的长度有限制。 https://support.google.com/firebase/answer/9237506?hl=en

      【讨论】:

        【解决方案7】:

        也许它与上述问题无关,但我认为它可以帮助某人。这是我的情况: 我对用户参与度更新的时间有误解,我以为我会在发送事件后立即更新! 但事实并非如此。你必须等待。 如果您想知道,您是否已成功将事件发送到董事会。您应该检查 Debug-View 部分。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-09-01
          • 1970-01-01
          • 2022-01-05
          • 2018-08-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-03-04
          相关资源
          最近更新 更多