在线和离线管理iPhone应用程序

我坚持一点,我也在离线管理我的应用程序。 我第一次从web服务获取所有配置文件数据并将其路径存储到sqlite中,我在更新这些数据时遇到问题,如果图像被更改,我应该如何通知我的应用程序,我在Google上搜索它,只有解决方案是发送在更新记录时将通知推送到应用程序。 如果用户不允许推送通知怎么办?

有没有其他解决方案可以离线管理应用程序并仅在从在线数据库更改记录时更新?

在应用程序中实现离线模式

  • 在所有表中放置一个额外的列data_status表示在本地数据库中输入的数据处于脱机或在线模式。 1表示在线,0表示离线
  • 在一些频繁的时间间隔内每次呼叫API,最后响应日期和时间(如果需要频繁更新数据,否则需要时调用)和API仅响应更改或新数据

当申请在线时

  • 使用data_status = 1在本地数据库中调用API和存储数据,然后在本地数据库的屏幕上显示该数据
  • 现在当再次调用与服务器API响应时间和日期相同的API时,API仅响应更改或新数据。

当应用程序离线时

  • 检查应用程序处于脱机状态,然后跳过API调用函数并从本地数据库获取数据。
  • 现在,当动作对更新插入等数据执行时。 使该行data_status = 0
  • 当互联网检查本地数据库时,数据是否与data_status = 0并逐一调用Web服务,并获得每个API的成功使data_status = 1并更新本地数据库中的行。

谢谢

我建议根据timestamp和唯一的userId给出Image Name。 如下所示。

 ImageName = yourUserId_timestamp.(111_1234567). 

因此,图像名称始终是唯一的。 所以当你从服务器获取日期时。 首先检查图像是否已存在于数据库中。 如果不是,则在userId的帮助下更新图像名称并存储它。 如果它然后离开它。

谢谢

没有什么可以改变你的(应用程序)方面,你的服务器人可以处理这个流程。 每当上传新图像时,都会生成一个用于特定对象的新URL。 您可以在本地替换它(只需更新现有数据)。

您可以使用API​​来检查App中缓存的数据版本。 如果服务器上有可用的更新版本,则必须使用更新的服务器数据更新本地数据。