iOS 在应用程序处于事件状态时处理推送通知点击

标签 ios push-notification onesignal

当应用程序处于事件状态时,如何处理推送通知点击? didReceiveRemoteNotification userInfo: [AnyHashable : Any] 当 iOS 设备收到推送通知时调用,当用户点击通知时调用相同的函数。我如何在这个函数中区分这个函数是如何调用的?我正在使用推送通知的 OneSignal,以防有必要了解问题。

最佳答案

OneSingal 有闭包通知您通知和用户操作。这就是我使用它的方式

func initOneSignalNotifications(withLaunchOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) {
        let onesignalInitSettings = [kOSSettingsKeyAutoPrompt: false]

        OneSignal.initWithLaunchOptions(launchOptions, appId: Constants.oneSignalKey, handleNotificationReceived: { (receivedNotification) in

            //Notification is received

        }, handleNotificationAction: { (notificationResult) in
            //Notification was tapped
        }, settings: onesignalInitSettings)

        OneSignal.inFocusDisplayType = OSNotificationDisplayType.notification;
        OneSignal.promptForPushNotifications(userResponse: { accepted in
            FileHandler.log(message: "Notification permission granted: \(accepted)", tag: .application, logLevel: .info)
        })
    }

此处 inFocusDisplayType 表示当您的应用打开时,OneSignal 仍会显示通知。

关于iOS 在应用程序处于事件状态时处理推送通知点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57196217/

相关文章:

ios - 保存与 Realm 的多对多关系

是否在括号内推送通知的 iOS 设备 token

parse-platform - 使用 Parse.com 发送推送通知的内部/外部查询的限制?

ionic-framework - [Ionic][Onesignal] 如何在点击通知时刷新页面

android - OneSignal 推送通知分割用户

iphone - ASIHTTPRequest - 设置忽略缓存/代理

ios - 线程 1 断点 1.2 - Swift Xcode 6 beta 2

iphone - 在 iOS 中与 Instagram 上的图像共享文本

android - 与 Android 一键通

javascript - OneSignal 获取玩家 ID