Firebase 分析在 DebugView 中显示不正确的数据

Posted

技术标签:

【中文标题】Firebase 分析在 DebugView 中显示不正确的数据【英文标题】:Firebase analytics displays incorrect data in DebugView 【发布时间】:2018-11-01 01:26:32 【问题描述】:

我正在使用 Firebase 分析。我注册了两个用户属性,我有两个自定义事件,每个事件包含 3 到 50 个不同的选项选项。我遇到的问题是,当我设置用户属性时,DebugView 经常显示事件的旧用户属性或根本不显示。有时它可以正常工作。请告诉我如何解决?

我的代码。

final class FirebaseAnalyticsManager 

    enum ScreenType 
        case editStoryScreen, homeScreen, previewStoryScreen, storeItemPreviewScreen

        var name: String 
            switch self 
            case .editStoryScreen:
                return "Edit Story Screen"
            case .homeScreen:
                return "Home Screen"
            case .previewStoryScreen:
                return "Preview Story Screen"
            case .storeItemPreviewScreen:
                return "Store Item Preview Screen"
            
        
    

    enum Event 
        case templateSelected, mediaExport

        var name: String 
            switch self 
            case .templateSelected:
                return "TemplateSelected"
            case .mediaExport:
                return "MediaExport"
            
        
    

    enum MediaExportDestination 
        case story, page, pageToInstagram

        var name: String 
            switch self 
            case .story:
                return "Story"
            case .page:
                return "Page"
            case .pageToInstagram:
                return "PageToInstagram"
            
        
    

    private enum Keys: String 
        case exportType, templateName
    

    private init()  
    static let shared = FirebaseAnalyticsManager()

    open func trackScreen(_ screenType: ScreenType, screenClass: String?) 
        Analytics.setScreenName(screenType.name, screenClass: screenClass)
    

    private func trackEvent(_ event: Event, parameters: [String : NSObject]?) 
        Analytics.logEvent(event.name, parameters: parameters)
    

    open func trackTemplateSelected(_ templateName: String) 
        let key = Keys.templateName.rawValue
        Analytics.setUserProperty(templateName, forName: key)
        var parameters = [String : NSObject]()
        parameters[key] = templateName as NSObject
        trackEvent(.templateSelected, parameters: parameters)
    

    open func trackMediaExport(_ destination: MediaExportDestination) 
        let key = Keys.exportType.rawValue
        Analytics.setUserProperty(destination.name, forName: key)
        var parameters = [String : NSObject]()
        parameters[key] = destination.name as NSObject
        trackEvent(.mediaExport, parameters: parameters)
    


在这种情况下,所有数据都是正确的。

在这种情况下,数据不正确,因为它应该是 userProperties 中的 Template5。

【问题讨论】:

【参考方案1】:

Firebase 团队回复了我

你好, 我刚刚从我们的工程师那里得到了更新,确认这确实是我们的一个错误。他们已经在努力解决这个问题,但我无法分享关于何时修复此问题的详细信息或时间表。请密切关注我们的发行说明,了解有关此方面的任何更新。

【讨论】:

@Frank van Puffelen 你知道它是否已经修复了吗?我也在我的项目中看到了这种情况,我想知道它是否是我这边的错误,或者问题是否仍然存在@Firebase ...您是否知道它只是 debugView 中的错误(因此分析是正确的)或者是分析也受到影响? @Alexander 您是否在生产版本上也遇到过相同的行为,还是仅在调试视图中看到? @UriAbramson 在这两种情况下(调试和发布)我都遇到了这样的问题。我还没有检查 Firebase 是否修复了这个错误。 @Alexander 有这方面的消息吗? @look1n 没有消息

以上是关于Firebase 分析在 DebugView 中显示不正确的数据的主要内容,如果未能解决你的问题,请参考以下文章

Firebase Analytics 事件属性未显示,但确实出现在 DebugView 中

DebugView 中 Firebase Analytics 的用户属性

我在 DebugView Firebase Analytics ios swift 中看不到自定义日志事件

我应该在 TestFlight 的 DebugView 中看到应用内购买吗?

Firebase 中的 DebugView 不显示我的设备。我正在使用 MBP M1。当我在我的 Windows 上调试时它会被识别

Firebase Analytics - 无法检索 Firebase 实例 ID