Firebase Analytics setScreenName 已弃用

Firebase Analytics setScreenName deprecated

在 Firebase Analytics 版本 6.29.0 中,方法

class func setScreenName(_ screenName: String?, screenClass screenClassOverride: String?)

已弃用。给出的提示是 使用 +[FIRAnalytics logEventWithName:kFIREventScreenView 参数:]。

我的问题是screenName的参数是什么?如何重写我的辅助方法:

import FirebaseAnalytics
func setScreenName(_ screenName: String) {
    Analytics.setScreenName(screenName, screenClass: nil)
}

这是重写已弃用方法的代码:

替换此行:

Analytics.setScreenName(screenName, screenClass: nil)

这一行:

Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName])

我是这样做的:

已弃用的代码

Analytics.setScreenName(name, screenClass: className)

新代码

Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: name,
                                                          AnalyticsParameterScreenClass: className])

以防万一它可以帮助别人,这里是 Objective-C 版本:

[FIRAnalytics logEventWithName:kFIREventScreenView parameters: @{kFIRParameterScreenName: screenName}];

这里是 Android 版本:

Java

Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.SCREEN_NAME, screenName);
bundle.putString(FirebaseAnalytics.Param.SCREEN_CLASS, screenClass);
bundle.putString(MyAppAnalyticsConstants.Param.TOPIC, topic);
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW, bundle);

科特林

val bundle = Bundle()
bundle.putString(FirebaseAnalytics.Param.SCREEN_NAME, screenName)
bundle.putString(FirebaseAnalytics.Param.SCREEN_CLASS,classname)
firebase.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW, bundle)
extension Analytics
{
    static func setScreenName(_ screenName:String, screenClass:String)
    {
        Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName,AnalyticsParameterScreenClass:screenClass])
    }
}

在您的项目中简单地添加此扩展,此后无需更改任何内容