gpt4 book ai didi

iphone - 如何关闭当我的应用程序在后台时出现的 UILocalNotification?

转载 作者:行者123 更新时间:2023-12-03 20:08:58 27 4
gpt4 key购买 nike

我正在开发一个 iPhone 应用程序,需要使用 UILocalNotifications 提醒用户定期 checkin 。如果他们几个小时没有签到,可能会提醒他们几次,但我只想显示最新的通知。

现在,如果应用程序打开,我会收到 didReceiveLocalNotification:(UILocalNotification *)notification 的回调,并且我可以跟踪是否显示通知。

如果应用程序未运行并且用户单击 -action- 按钮,我会收到回调

  • (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;

这样我就可以忽略任何旧的通知。但是,如果他们单击“取消”,则必须在一堆分层通知上单击“取消”,因为据我所知,我没有收到回调(如果应用程序未启动,我怎么能收到回调)并且在创建 UILocalNotification 时似乎没有标志或其他东西可以让应用程序中的新提醒自动消除其他提醒。

如果应用程序在后台但正在运行,情况会更糟 - 首先,如果用户单击“取消”,我不会收到任何回调,所以我遇到了同样的问题 - 用户必须单击“取消”一堆次。其次,如果他们单击该操作,我会收到对 ApplicationDidBecomeActive 的调用,但是这与用户只是来回切换时没有区别;我可以在这里解雇并重新安排它们,但它似乎工作得并不完美,有时在它们被解雇之前会弹出一些。

有什么建议吗?如果有一种方法可以让通知自动过期,那就太好了。我在网上查了一下,没有找到太多帮助,但这似乎是一个很大的疏忽,所以希望有某种方法可以优雅地处理这个问题。

谢谢。

最佳答案

当用户按照您指出的“取消”时,您将无法收到任何回调。

在你的情况下是否可以只提醒用户一次?一次仅安排一个通知,并在应用启动/恢复时更新它。

关于iphone - 如何关闭当我的应用程序在后台时出现的 UILocalNotification?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5588674/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com