【问题标题】:Firebase analytics displays incorrect data in DebugViewFirebase 分析在 DebugView 中显示不正确的数据
【发布时间】:2023-04-08 00:52:02
【问题描述】:

我正在使用 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。

【问题讨论】:

    标签: ios swift firebase firebase-analytics firebase-console


    【解决方案1】:

    Firebase 团队回复了我

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

    【讨论】:

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