当Apple的官方iOS Messages应用程序打开并在前台运行时,来自其他联系人的新消息会触发原始的本地iOS通知警报横幅。参见下图。在App Store的第三方应用程序中有可能吗?当您的应用处于打开状态且处于前台时,您的应用的本地通知和/或推送通知?测试我的应用程序时,会收到通知,但不会显示iOS警报UI。但是,这种行为是出现在苹果的官方消息应用程序:消息处于打开状态并且位于前台。 仍显示通知警报。在本地和远程通知编程指南说:当操作系统传递本地通知或远程通知并且目标应用未在前台运行时,它可以通过警报,图标徽章编号或声音向用户显示通知。如果在传递通知时应用程序在前台运行,则应用程序委托会接收本地或远程通知。因此,是的,我们可以在前台接收通知数据。但是我看不到呈现本机iOS通知警报UI的方法。-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { // I know we still receive the notification `userInfo` payload in the foreground. // This question is about displaying the stock iOS notification alert UI. // Yes, one *could* use a 3rd party toast alert framework. [self use3rdPartyToastAlertFrameworkFromGithub]}然后,Messages是否在前台使用私有API来显示警报?对于这个问题的目的,请不要提出任何第三方“敬酒”,弹出警报在github上或者等我只是有兴趣,如果这可以用做库存,提供原生iOS本地或推送通知提醒用户界面,而你应用程序是打开的,并且处于前台。
3 回答
动漫人物
TA贡献1815条经验 获得超10个赞
要在应用程序处于前台状态时显示横幅消息,请使用以下方法。
iOS 10以上版本,Swift 3以上版本:
func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
completionHandler([.alert, .badge, .sound])
}
- 3 回答
- 0 关注
- 745 浏览
添加回答
举报
0/150
提交
取消