是否可以在iOS中安排SILENT本地通知?

时间:2016-08-02 20:11:27

标签: ios notifications uilocalnotification

我正在尝试在本地安排通知,因为我在后端还没有必要的结构。这个想法是在经过一段时间后,某些条件得到验证;如果满足,则触发常规本地通知。

例如,使用计时器可以很容易地实现这一点,但是这段时间中的一些时间足够长(1小时24小时),这不起作用。

这就是我最终在本地通知中思考的方式。我可以安排一个+ 24小时的火药。问题是,为了验证条件,我需要保持沉默。

configuring a local notification部分here看来,只有远程通知才能保持沉默,但实际上并没有说它无法完成。

另外,我发现除了badgeNumber之外什么都可以触发本地通知,它会改变徽章。虽然我的AppDelegate中的回调从未被调用过。

我看到有些人说不能这样做,但没有找到真正的官方证据。有人设法做到了吗?或者确切地知道这实际上是不可能的?任何建议都会有很大帮助,非常感谢!

1 个答案:

答案 0 :(得分:3)

我尝试过并拥有与您相同的体验 - 当我的应用程序不在前台时,从不调用回调。这是设计的。 Apple文档指出只有当您的应用位于前台时才会调用回调<p:inputmask> https://developer.apple.com/reference/usernotifications/unusernotificationcenterdelegate/1649518-usernotificationcenter?language=objc

当应用程序不在前台时接收通知的唯一回调方法是userNotificationCenter:willPresentNotification:withCompletionHandler:但不幸的是它仅用于推送通知(无声或其他)。 https://developer.apple.com/reference/usernotifications/unusernotificationcenterdelegate/1649518-usernotificationcenter?language=objc