gpt4 book ai didi

ios - 数据库目录问题

转载 作者:行者123 更新时间:2023-11-29 02:20:02 24 4
gpt4 key购买 nike

我们的应用已被 Apple 拒绝并显示以下指示:

“请确认只有用户使用您的应用程序创建的内容(例如文档、新文件、编辑等)会根据 iOS 数据存储指南的要求由 iCloud 进行备份。此外,请检查是否有任何临时文件您的应用程序使用的文件仅存储在/tmp 目录中;请记住在确定不再需要时移除或删除存储在此位置的文件。

可以重新创建但必须保留以确保您的应用程序正常运行的数据 - 或者因为用户希望它可以离线使用 - 应该标有“不备份”属性。对于 NSURL 对象,添加 NSURLIsExcludedFromBackupKey 属性,防止对应文件被备份。对于 CFURLRef 对象,使用相应的 kCRUFLIsExcludedFromBackupKey 属性。”

我们很惊讶,因为我们的数据库位于 Library 根文件夹中(而不是在 Caches 中),并且没有内容存储在 Documents 文件夹中。那么,为什么他们引用与文档文件夹相关的 iCloud 和数据存储指南?

https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html#//apple_ref/doc/uid/TP40010672-CH2-SW1

非常感谢您的帮助。

最佳答案

您的应用程序的数据库位于库文件夹中与 iCloud 备份无关。据推测,您已经启用了 iCloud。因为你只有一个数据库,所以一切都会备份。

相反,如果您的数据库包含非用户特定的种子数据或可下载数据,您应该将其与用户数据分开。创建第二个数据库并为 iCloud 启用一个,另一个不启用。

话虽这么说,但由于数据库文件经常损坏,有人认为 sqlite 和 iCloud 不能很好地结合使用。考虑到你的报告,这似乎是真的。

最好改用 Core Data。我做过很多 sqlite 到 Core Data 的迁移,比如说,从 Android 应用程序。当你让你的核心数据与其他数据库(在线、其他移动平台)很好地配合后,你会发现你可以编写优雅而简洁的代码,并且性能非常好。

Apple 会给您机会发布一条短消息,说明您在重新提交时所做的更改。

祝你好运!

关于ios - 数据库目录问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28256694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com