我想使用 iOS 10 上的 UserNotificationFramework 向自己发送仅数据通知——即,没有面向用户的文本或声音。基本上将它用作持久计时器,以便能够触发应用程序,如果在它触发时运行,以检查由于令牌到期而导致的会话超时等事情。
有点类似于本地通知中的“内容可用”不露面推送通知。
除了需要涉及某种面向用户的数据的情况下,我无法获得触发通知,这一切都正常工作。
以下是添加到UNUserNotificationCenter以触发通知的UNNotificationRequest的UNMutableNotificationContent的相关部分。
// content.body = "Expiration"
// content.sound = UNNotificationSound(named: "silent-short.wav")
content.threadIdentifier = typeIdentifier
content.userInfo = ["1":"One"]
content.setValue("YES", forKey: "shouldAlwaysAlertWhileAppIsForeground")
如上所述,通知根本不会触发。如果我取消注释其中任何一行——不管哪一行——它都会触发。但我不希望向用户(在应用程序内部或外部)显示文本通知横幅,所以第一个没有帮助。我尝试使用无声的声音,以便系统可以认为它正在播放声音但用户没有任何体验。但是系统会发出方便的振动。在这种情况下不是那么方便。有没有办法让通知不振动?或任何其他方式来获取仅本地数据的通知?