ios - 使用 Firebase Analytics 事件记录 OneSignal 推送通知

标签 ios swift push-notification firebase-analytics onesignal

因此,我的目标是记录事件出现在我的应用程序上的任何推送通知。我正在使用 Firebase Analytics 记录任何事件,我已经知道如何使用它:

Analytics.logEvent(FirebaseEventName, parameters: [:])

但是是否可以将事件记录为推送通知?我正在使用 OneSignal 作为我的推送通知服务。

最佳答案

我找到了答案。但是我的方法需要后端参与。我没有答案,因为我不处理后端部分。以下答案仅适用于 only just just for iOS 部分。

因此,该方法使用OneSignal方法,并在

中实现

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> bool {

如果您已经在使用 OneSignal for iOS,您应该已经在 didFinishLaunchingWithOptions

中编写了以下代码
OneSignal.initWithLaunchOptions(launchOptions, appId: ONE_SIGNAL_APPID, handleNotificationReceived: { (notification) in
        let additionalData = notification?.payload.additionalData // Get additional data such as custom flaging from backend
        if additionalData != nil { // A condition to avoid crash if additionalData is empty
            let customFlag:String = additionalData!["tipe"] as! String // Get value of the custom flag, in this case mine is "tipe", and store the value to customFlag
            Analytics.logEvent(customFlag, parameters: [:]) // Send Log Event to Firebase
        }
    }, handleNotificationAction: { (result) in

    }, settings: [kOSSettingsKeyInFocusDisplayOption: OSNotificationDisplayType.none.rawValue,kOSSettingsKeyAutoPrompt : true])

例如,如果您打印 additionalData,该值应该看起来像

[AnyHashable("tipe"): inbox]

这个值在后端部分设置/声明。

关于ios - 使用 Firebase Analytics 事件记录 OneSignal 推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53311337/

相关文章:

iphone - 如何正确裁剪在 iPhone 4G 上拍摄的图像(带有 EXIF 旋转数据)?

ios - Firebase 不显示通知

ios - 如何在 UIView 中设置 UICollectionView

ios - 什么可以是用户帐户的唯一标识符?

ios - 如何动态更改 UICollectionView 图像的 borderColor

ios - SKStoreReviewController.requestReview() 在 Live App 中不起作用

ios - 在 uitableviewcell 中集成 AdMob Native Ads Express?

ios - 在前台推送通知

iphone - 用于实现实时聊天应用程序的推送通知与 Web 套接字?

apache-flex - Tweetdeck 如何进行推送通知?