【发布时间】:2018-02-10 15:41:41
【问题描述】:
我想使用 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")
如上所述,通知根本不会触发。如果我取消注释其中任何一行——无论哪一行——它都会触发。但我不希望向用户(在应用程序内部或外部)显示文本通知横幅,所以第一个没有帮助。我尝试使用无声的声音,以便系统可以认为它正在播放声音但用户没有任何体验。但是系统会发出方便的振动。在这种情况下不是那么方便。有没有办法让通知不振动?或者任何其他方式来获取仅本地数据的通知?
【问题讨论】:
-
继承它的名字是user通知,即user看到的东西。 AFAIK 没有办法使用
UNNotificationRequest做到这一点,您必须使用 silent 来实现这一点 - 以其名称继承的通知是无声的,即 user 没有的东西见。
标签: ios swift unnotificationrequest