Mul*_*ard 7 background-process synchronisation ios swift3
我对iOS编程很新,现在想要实现定期后台同步,以便将我的服务器数据与客户端数据同步.我想要实现的是与Androids相当的SyncAdapter
,您可以在其中定义时间间隔(例如每30分钟),系统将在后台自动触发定义的任务.
到目前为止,我找不到Swift 3.0的这种机制,所以我需要问一下somone是否有经验或一些暗示我如何实现这一目标.
我想做的事听起来很简单:
当应用程序首次启动时,应用程序应设置同步管理器,该管理器每30分钟自动触发一次后台任务.后台任务负责同步服务器和客户端数据(使用Alamofire).
我怎样才能做到这一点?
有一个名为的iOS功能BackgroundFetch
,您可以设置
定期从网络下载和处理少量内容
你可以设置一个minimumBackgroundFetchInterval
.
与上面提到的Android功能相比,这个间隔不能保证.
操作系统在黑盒中进行一些启发式操作.它奖励您使用"合理"(对OS)CPU时间/功耗以及用户经常使用.另一方面,你会因为耗尽电池而受到惩罚,如果你的应用程序从未使用过,那就更糟了.
请参阅:Apple文档
或者,根据您的需要,您可以Silent (push) Notification
在服务器端随时更新用户数据.静音推送会在不通知用户的情况下唤醒您的应用,因此您可以获取数据并通过安排本地通知来通知用户.
请参阅:Apple文档
归档时间: |
|
查看次数: |
6131 次 |
最近记录: |