我看了看,但到目前为止我还没有找到答案,所以是时候问这里了。
AFAIK,当应用程序处于后台或关闭时,将显示到期的预定本地通知(根据应用程序的通知设置 - .alert,.badge,.sound),但不会进行任何方法调用那个时候做的。只有当用户处理通知时,才会运行 didReceive 方法。
OTOH,如果应用程序位于前台, willPresent 方法调用将会触发,因此您可以在将通知显示给用户之前处理该通知,或者将其全部解除。
我正在寻找一种拦截通知的方法,然后在应用程序处于后台或关闭时向用户显示通知。 IOW,本地通知到达,检查某些条件,然后传送本地通知(就像在前台一样)。
...或者只是唤醒应用程序并让应用程序从那里处理事情,但在显示之前以某种方式截取该背景本地通知。
来自来源:Local and Remote Notifications Overview,Scheduling and Handling Local Notifications和Modifying and Presenting Notifications。
我一无所获。这可能吗?
也许这可以通过推送通知来完成......但我还没有找到如何安排从客户端到远程服务器的通知,因此在预定的时间服务器推送通知,它可以通过通知扩展,用于处理,显示或解雇。