【问题标题】:Firebase iOS Debug Console not logging anythingFirebase iOS 调试控制台未记录任何内容
【发布时间】:2017-11-06 12:32:23
【问题描述】:

我在控制台和应用程序中都设置了 firebase。一切都正确配置,并且事件似乎正在记录到应用程序中。

输出到控制台:

<FIRAnalytics/DEBUG> Logging event: origin, name, params: app, 
log_something, {
        "_o" = app;
        "full_text" = khbsdpibdsjl;
        name = lwkjbgskljsavdkjl;
    }

我启用了调试标志:-FIRDebugEnabled

但在调试事件控制台中却没有任何内容。我看到没有可用的设备,没有记录任何事件,绝对 0 表示任何连接。我一定是错过了什么?

编辑:我一直在关注这个来设置调试事件。 https://firebase.google.com/docs/analytics/debugview#enabling_debug_mode

我在 StreamView 中看到了事件,但在调试视图中什么也没有,即使我启用了调试模式。

【问题讨论】:

  • 至少对我来说,当我在模拟器上测试分析日志功能时,没有记录任何事件。但是,当我在实际的 iPhone 上试用它时,它起作用了!

标签: ios firebase google-analytics firebase-analytics


【解决方案1】:

如果您已完成 Firebase 文档所述的所有操作,则可能是您在 Firebase Analytics 的“调试视图”中选择了错误的“调试设备”。更改左上角的调试设备后,我之前的所有分析事件都显示出来了!所以并不是我的事件没有被发送到 Firebase,我只是看到了错误的观点。附上图片。

【讨论】:

    【解决方案2】:

    我的配置与 jaywant-khedkar 相同,但 Firebase 调试视图中没有显示任何事件或设备。

    发现我网络上的 pi-hole 正在吞噬所有事件。 因此,如果您的网络上有任何类型的广告拦截器,请将其禁用并重试。

    调试愉快!

    【讨论】:

      【解决方案3】:

      或者,您可以在 AppDelegate 中执行此操作:

      func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
      
          var newArguments = ProcessInfo.processInfo.arguments
          newArguments.append("-FIRDebugEnabled")
          ProcessInfo.processInfo.setValue(newArguments, forKey: "arguments")
          
      } 
      

      ---额外---

      还有一些想法:

      关于

      Firebase.Analytics.setAnalyticsCollectionEnabled(true)
      

      如果我们检查方法:

      所以这有点无意义...

      【讨论】:

        【解决方案4】:

        我最近遇到了一个问题,Xcode 控制台说一切都很好,并且正在记录和发送所有内容,并且我有“-FIRDebugEnabled”,我在这个线程中尝试了所有其他建议,但没有任何效果。 没有任何内容被发送到 Firebase 的 DebugView。

        查看我的 git 历史记录,我确定问题的发生是由于 pod update,而我的问题的解决方案是另一个 pod update

        我不知道哪个 pod 失败了,但我怀疑是 Moya、Alamofire 或 FirebaseAnalytics……在此之后,我强烈考虑锁定我的 pod 版本。

        【讨论】:

          【解决方案5】:

          试试这个,这对我有用,

          按照以下步骤,

          1.在Xcode中,选择Product → Scheme → EditScheme

          2.从左侧菜单中选择运行选择参数选项卡 在 Arguments Passed on + 选项中

          添加-FIRDebugEnabled

          详细调试视图请按照步骤DebugView track Firebase doc

          要在 XCode 项目中发送事件,请遵循以下代码,

          目标 C

          [FIRAnalytics logEventWithName:@"share_image"
                              parameters:@{@"name": name, @"full_text": text}];
          

          斯威夫特

          Analytics.logEvent("share_image", parameters: ["name": name, "full_text": text])
          

          对于事件日志,请按照详细步骤Log events in Application Firebase doc

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

          【讨论】:

          • 您可以从这个答案中了解视觉效果。
          【解决方案6】:

          我通过编写以下代码使之成为可能:

          func application(_ application: UIApplication, didFinishLaunchingWithOptions, ...) {
              // some other initialization
          
              FirebaseApp.configure()
              Firebase.Analytics.setAnalyticsCollectionEnabled(true)
          }
          

          【讨论】:

          • 这确实有帮助。谢谢
          • 我对默认启用的 cmets 持怀疑态度 + 我已确认它已在 plist 中启用。但是,是的,直到我添加了这一行,它才起作用。
          • 仍然相关吗?我正在使用FirebaseAnalytics,它还评论说setAnalyticsCollectionEnabled 默认设置为true
          【解决方案7】:

          确保在 -FIRDebugEnabled

          之前添加 ONE DASH

          错过了DASH

          ,我浪费了一整天的时间犯了愚蠢的错误

          希望这不会发生在其他人身上!

          【讨论】:

            【解决方案8】:

            现在这并不重要,但对于在这个问题上遇到错误的人来说仍然很重要。由于GoogleServices-Info.plist 文件中的问题,firebase 分析的调试模式有时不起作用 只需进行这 2 项更改即可。

            1. 将 IS_ANALYTICS_ENABLED 设置为 YES
            2. 将 FIREBASE_ANALYTICS_COLLECTION_DEACTIVATE 设置为 NO

            【讨论】:

            • 非常感谢。这两个键解决了我的问题。
            • 密钥FIREBASE_ANALYTICS_COLLECTION_DEACTIVATE 是否仍然相关?新的GoogleServices-Info.plist 文件不包含此类字段
            【解决方案9】:

            在访问 Firebase 网站时检查您是否启用了广告拦截器。

            我启用了 uBlock origin,它会阻止每个页面(仪表板、事件、StreamView、DebugView...)并且它们都是空白的。

            我将其列入白名单后,一切都按预期工作。

            【讨论】:

              【解决方案10】:

              如果您在某个时候添加了 OS_ACTIVITY_MODE:disable,请确保从项目方案中的环境变量中删除它。

              【讨论】:

              • 有人在我们的调试版本中添加了OS_ACTIVITY_MODE=${DEBUG_ACTIVITY_MODE},根据您运行的 XCode 版本,有时启用有时禁用
              【解决方案11】:

              我也有同样的问题。

              1检查您的 Cocopods 的 Firebase 版本。

              • 使用 pod 更新 Firebase
              • 列表项
              • 确保这是最新的

              2开启调试模式

              • 在启动时传递的参数部分
              • 添加 - FIRDebugEnabled。

              【讨论】:

              • 我得到了一些非常古怪和不稳定的结果。调试流工作,突然停止显示事件,
              • 在我通过更新 pod 更新 Firebase 后记录事件。所以它对我有用。
              猜你喜欢
              • 2011-04-12
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-11-15
              • 1970-01-01
              • 2015-06-28
              • 2022-06-11
              • 2023-01-11
              相关资源
              最近更新 更多