簡體   English   中英

使用Firebase Analytics事件記錄OneSignal推送通知

[英]Log OneSignal Push Notification with Firebase Analytics Event

因此,我的目標是記錄事件出現在我的應用程序上的所有推送通知。 我正在使用Firebase Analytics記錄任何事件,並且我已經知道如何使用來使用它:

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

但是是否可以記錄事件的推送通知? 我使用OneSignal作為我的推送通知服務。

我找到了答案。 但是我的方法要求后端參與其中。 我沒有答案,因為我不處理后端部分。 以下答案僅適用於iOS部分。

因此,該方法使用的是OneSignal方法,並且在

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

如果您已經在使用iOS的OneSignal,則應該已經在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]

並且此值在后端部分中設置/聲明。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM