首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >管理脱机和在线的iPhone应用程序

管理脱机和在线的iPhone应用程序
EN

Stack Overflow用户
提问于 2014-12-09 11:13:42
回答 4查看 404关注 0票数 1

我被困住了,我也在离线管理我的应用程序。当我第一次从when服务中获取所有数据(图像)并将其路径存储到sqlite中时,现在我取一个int值0或1并将其状态存储到NSUserDefaults中,现在我在更新这些图像时遇到了问题,比如如果图像被更改了,我应该如何通知我的应用程序,我在Google上搜索它,唯一的解决方案是在更新记录时向app发送推送通知。如果用户不允许推送通知怎么办?

是否有任何其他解决方案可以离线管理应用程序,并仅当记录从联机数据库更改时才更新?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-12-09 12:20:25

您可以定期与服务器同步数据,例如调用webservice检查图像是否已更改,然后获取新图像,如果图像未更改,则继续使用旧data.You在服务器端添加布尔值,该值可以告诉您服务器上的数据是否更新,或者您可以使用时间戳检查此值,比如上次更新数据时,然后将本地时间与更新数据的服务器时间进行比较。好运!!

票数 0
EN

Stack Overflow用户

发布于 2014-12-09 11:19:13

有办法处理这种情况:

  1. 使用推送通知,这是这种情况的最佳解决方案。
  2. 通过赋予用户设置应用程序设置时间间隔的能力,定期查询服务器。
  3. 当应用程序从背景到前台时,查询服务器。
票数 0
EN

Stack Overflow用户

发布于 2014-12-09 11:35:07

一个想法是在应用程序没有运行时使用BackgroundFetch更新它的内容。在我的一个应用程序中,我使用类似的fetch,在用户打开应用程序之前更新内容。我正在获取一个小的项目列表,它表明哪一项是最新的,哪些不是。然后,在运行时,我向用户提供了手动更新这些项的选项,但当然,您也可以在后台获取时下载所有这些内容。我的应用程序大部分时间都没有网络,当有一些互联网连接时,backgroundFetch会首先更新项目列表。

这里有两个您需要注册的重要方法,setMinimumBackgroundFetchInterval:和setMinimumBackgroundFetchInterval。您可以在苹果背景模式指南中阅读更多有关它们的信息。

您还可以查看有关此抓取功能的好教程:http://www.appcoda.com/ios7-background-fetch-programming/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27377558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档