通过在iOS中同步压缩的sqlite数据库可能会拒绝应用

时间:2013-05-16 06:58:46

标签: iphone ios sqlite app-store icloud

我有一个需要使用iCloud备份的SQLite数据库。我知道Apple建议不要同步整个数据库,它可能reject the App。可能的解决方法包括 -

1)切换到核心数据    - 对于这个选项来说太迟了,考虑到核心日期的学习曲线,我不想延长时间表。

2)维护SQLite的日志文件并同步日志文件    - 此选项更有效,我将其作为故障安全

进行处理

3)使用ZipArchive压缩数据库并同步zip文件 - 这将是最容易实现的,但我不确定Apple是否会拒绝或接受此操作。拉链前尺寸为300kb,拉链后尺寸约为40kb。

有没有其他人尝试过zip方法并成功将其应用程序提交到appstore?

任何其他建议都会非常有用。

由于

1 个答案:

答案 0 :(得分:3)

嗯,严格来说,链接是在iCloud上讨论同步 sqlite数据库。你说你想要备份。如果您不需要不同的设备来编辑相同的数据库文件,那么您可能没问题。

但是,如果您需要不同的设备来对“相同”的数据库文件进行编辑访问(同步),那么通过上传实际的数据库文件就无法使用sqlite在iCloud上执行此操作 - 您将最终得到一个腐败的数据库。

您必须实现自己的事务日志记录系统 - 在每个设备上保留单独的数据库,并使用日志文件使它们彼此保持同步。这实际上是Apple为其核心数据同步解决方案所做的事情 - 数据库仅存在于设备上,而不存在于iCloud中 - 只有事务日志文件才会上传到iCloud。

有人知道是否有人发明了解决方案吗?它不应该超出可能性范围......

实际上,this的回答与我刚刚做的完全一样......