我被困住了,我也在离线管理我的应用程序。当我第一次从when服务中获取所有数据(图像)并将其路径存储到sqlite中时,现在我取一个int值0或1并将其状态存储到NSUserDefaults中,现在我在更新这些图像时遇到了问题,比如如果图像被更改了,我应该如何通知我的应用程序,我在Google上搜索它,唯一的解决方案是在更新记录时向app发送推送通知。如果用户不允许推送通知怎么办?
是否有任何其他解决方案可以离线管理应用程序,并仅当记录从联机数据库更改时才更新?
发布于 2014-12-09 12:20:25
您可以定期与服务器同步数据,例如调用webservice检查图像是否已更改,然后获取新图像,如果图像未更改,则继续使用旧data.You在服务器端添加布尔值,该值可以告诉您服务器上的数据是否更新,或者您可以使用时间戳检查此值,比如上次更新数据时,然后将本地时间与更新数据的服务器时间进行比较。好运!!
发布于 2014-12-09 11:19:13
有办法处理这种情况:
发布于 2014-12-09 11:35:07
一个想法是在应用程序没有运行时使用BackgroundFetch更新它的内容。在我的一个应用程序中,我使用类似的fetch,在用户打开应用程序之前更新内容。我正在获取一个小的项目列表,它表明哪一项是最新的,哪些不是。然后,在运行时,我向用户提供了手动更新这些项的选项,但当然,您也可以在后台获取时下载所有这些内容。我的应用程序大部分时间都没有网络,当有一些互联网连接时,backgroundFetch会首先更新项目列表。
这里有两个您需要注册的重要方法,setMinimumBackgroundFetchInterval:和setMinimumBackgroundFetchInterval。您可以在苹果背景模式指南中阅读更多有关它们的信息。
您还可以查看有关此抓取功能的好教程:http://www.appcoda.com/ios7-background-fetch-programming/
https://stackoverflow.com/questions/27377558
复制相似问题