有没有办法在收到推送通知但应用程序当前未运行(或应用程序被终止)后立即更新 SQLite。
如果通知在应用程序运行或在后台时到达 - “didReceiveRemoteNotification”方法处理我的更新。
如果通知在应用程序未运行时到达,我想将推送通知的内容更新到我的 sqlite。更新在用户点击通知时有效,但在用户点击应用程序图标时无效。 请帮忙。谢谢。
最佳答案
我认为没有点击就无法更新数据库。但是,如果您的应用使用 VOIP 等后台模式或苹果文档中提到的位置更新,https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html
然后它可能会在一定时间内唤醒您的应用程序并执行更新部分。
编辑
顺便说一下,当推送通知到达时,服务器也应该更新,我认为推送通知不是更新数据库的好方法。相反,您应该调用您的服务器以获取最新的本地事件,然后更新到您的 sqlite。您可以在 didFinishLaunching 或 didEnterForeground 中执行此操作。只是一个建议。
关于ios - 当应用程序未运行时使用推送通知的内容更新 SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29796165/