【问题标题】:write to database when ios app in background state当ios应用程序处于后台状态时写入数据库
【发布时间】:2012-12-11 15:14:18
【问题描述】:

当 iPhone 应用程序处于后台状态或应用程序最小化时,我想监控应用程序处于后台的持续时间,并且每隔一段时间(例如每 24 小时需要从 Web 服务器获取更新)并将修改写入我的本地数据库。

只要应用处于后台,此监控周期就会重复。这种任务在 iPhone 应用程序中是可能的吗?当应用程序处于后台状态时,任何人都可以帮助我如何执行这些任务?

beginBackgroundTaskWithExpirationHandler:是使应用程序在后台执行长任务的 API,但它支持多长时间。

【问题讨论】:

    标签: ios nsurlconnection background-process nsnotificationcenter uiapplication


    【解决方案1】:

    后台任务在 10 分钟后被杀死,所以回答您的问题:不,这并非没有通过重要位置的更新来伪造某种长期事件处理,即使那样,您也无法控制事件的确切时间被发送。另一方面,使用 APNS 来提醒用户更改有可能被忽略,但具有规律性。

    【讨论】:

    • 您好,感谢您的快速回复。你的意思是说APNS会解决我的目的?请分享适合我情况的详细信息。
    • 不,APNS 不会解决它。正如我在回答中所说,虽然您可以(但不应该)每 24 小时发布一次推送通知,但无法知道用户是否会立即(如果有的话)对其采取行动并将您的应用程序带到最前沿.此外,下载每日更新有什么意义?只是疯狂地缓存,然后在重新打开应用程序时获取最新的更改。
    • 我的数据库网络服务器包含一组不同地理区域的指标。服务器将有每日更新,每周更新,每月更新..这是我要求的明确细节。因此,在这种情况下,服务器会在有更新时发送推送通知,我猜我的应用程序可以下载相同的内容。你现在能告诉我它是否能解决我的目的吗..
    • 当然,就像我上面所说的,您可以随心所欲地使用 APNS,但这并不能阻止人们将其关闭或忽略它。如果您想可靠地进行此操作,请忽略实时更新并专注于同步数据库和客户端。
    猜你喜欢
    • 2022-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-06
    • 1970-01-01
    • 1970-01-01
    • 2019-02-15
    • 1970-01-01
    相关资源
    最近更新 更多