问题标签 [unnotificationrequest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 从 userNotificationCenter 检索通知类型:didReceiveNotificationResponse:withCompletionHandler:
有什么方法可以检索触发的类型(local
或remote
)通知userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler:
?
我正在为我的应用程序开发某种内部分析模块。在每个应用程序中,我需要从通知 userInfo 和通知类型(本地或远程)向我们的分析服务器发送特定信息。
为了让userInfo
我使用以下代码:
当然,在安排本地通知时,我可以将特定参数(到每个应用程序)添加userInfo
到检索通知类型。但可能存在更明确的方式来做我想做的事。
ios - 取消 UNNotificationRequest
因为UILocalNotification
现在已弃用,所以我将代码移至新的UNNotificationRequest
API。
它指出:“ cancelLocalNotification ”在 iOS 10.0 中已被弃用:使用 UserNotifications 框架的-[UNUserNotificationCenter removePendingNotificationRequestsWithIdentifiers:]
但似乎它并不相等 - 虽然我可以随时删除消息cancelLocalNotification
(即使它们被显示/传递),但似乎removePendingNotificationRequestsWithIdentifiers
只会删除未传递的通知。这真的很烦人。
所以我的问题是:是否有有效的方法删除排队的通知,UNNotificationRequest
或者我应该忽略那些弃用警告?
ios - 将 UNNotificationRequest (UserNotificationFramework) 用于 iOS 上的仅数据本地通知
我想使用 iOS 10 上的 UserNotificationFramework 向自己发送仅数据通知——即,没有面向用户的文本或声音。基本上将它用作持久计时器,以便能够触发应用程序,如果在它触发时运行,以检查由于令牌到期而导致的会话超时等事情。
有点类似于本地通知中的“内容可用”不露面推送通知。
除了需要涉及某种面向用户的数据的情况下,我无法获得触发通知,这一切都正常工作。
以下是添加到UNUserNotificationCenter以触发通知的UNNotificationRequest的UNMutableNotificationContent的相关部分。
如上所述,通知根本不会触发。如果我取消注释其中任何一行——不管哪一行——它都会触发。但我不希望向用户(在应用程序内部或外部)显示文本通知横幅,所以第一个没有帮助。我尝试使用无声的声音,以便系统可以认为它正在播放声音但用户没有任何体验。但是系统会发出方便的振动。在这种情况下不是那么方便。有没有办法让通知不振动?或任何其他方式来获取仅本地数据的通知?
swift3 - 每 14 天(每两周)触发一次 UILocalNotification Swift
这个问题已经在 SO 上得到了回答。这是参考:
但到目前为止我所尝试的是:
14天后我无法实现它。虽然,它来自随机数据。任何人都可以检查代码有什么问题吗?
更新:
根据您的建议(https://stackoverflow.com/a/46072497/7408802),这是最终的代码!
ios - UNUserNotificationCenter 单元测试
我尝试测试一个简单的方法,该方法应该为 iOS 10 创建和传递通知。
这是此方法的单元测试:
当我尝试执行单元测试时出现异常,堆栈跟踪:
由于 current() 方法,此失败的责任线应该是 UNUserNotificationCenter 的访问。我不明白为什么?UNUserNotificationCenter 应该是一个单例,我不能在单元测试上下文中使用它吗?我应该嘲笑它吗?
ios - 如何让 UNNotificationSound 使用项目中蓝色文件夹中的 .caf 文件
我正在创建一个带有 UNNotificationSound 的 UNNotificationRequest 为:
声音位于主项目文件夹中的文件夹(蓝色)alarmSounds 中。
使用的声音始终是默认声音而不是我的声音。我也尝试过在“named:”参数中没有“alarmSound/”,但仍然无法正常工作。
我需要对声音文件做些什么特别的事情吗?
这是使用 xcode 9 并在 iOS 11 设备上尝试。
ios - 可以有多个未完成的 UNNotificationRequest 吗?
我的应用程序为将来安排了多个 UNNotificationRequest。每个请求都有一个唯一标识符。这不是在 UNCalanderNotificationTrigger 上重复的情况,因为重复设置为 NO。相反,每个请求都设置为不同的未来日历日期,但它们都是连续请求的,而且基本上是同时请求的。每个触发器由传入以下方法的间隔 (NSTimeInterval) 设置。UNNotificationCenter 委托 (appDelegate) 随后不会收到任何请求,无论是应用程序在后台还是前台。Apple 的开发人员文档都没有相关示例。我想知道我是否应该在完成处理程序中检查完成(我的代码有 withCompletionHandler: nil,但这就是 Apple 示例中显示的内容)。
ios - UNUserNotificationCenter removeAllDeliveredNotifications 在 ios 11.2 中不起作用
我有一个包含多个本地通知的应用程序。当我尝试清除所有传递的通知时,我调用此removeAllDeliveredNotifications
方法。它工作正常,直到ios 11.1
。在ios 11.2
及以上,它不能按预期工作。通知仍保留在通知中心。有人可以帮我解决这个问题。
提前致谢。
ios - iOS 11.2 从通知中心发送的通知不会删除
我一直在使用removeDeliveredNotificationsWithIdentifiers:
和removePendingNotificationRequestsWithIdentifiers
方法从通知中心删除本地通知。
在我将设备更新到 iOS 11.2.2 之前,它一直运行良好,通知仍保留在通知中心。如果我运行getDeliveredNotificationsWithCompletionHandler
,它会返回一个空数组。
从代码中执行删除命令后,如果从托盘中删除应用程序的一个通知,则同一应用程序的其余通知也会被删除。
每个通知都有不同的标识符。
我有另一台具有 11.1 的设备,通知正在此设备上完美删除。
swift - UNUserNotificationCenter.current().getDeliveredNotifications 只返回空数组
我正在尝试检索仍显示在通知中心但UNUserNotificationCenter getDeliveredNotifications(completionHandler:)
不起作用的所有已发送通知。我可以获取所有待处理的通知,UNUserNotificationCenter getPendingNotificationRequests(completionHandler:)
但getDeliveredNotifications
即使通知中心有通知,也只会返回 0 计数。