- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我的 iPhone 应用上周被拒绝了,因为我没有遵循 iOS 数据存储指南。我的应用主要是搜索某些数据并将它们显示给可以与他人分享(Twitter、电子邮件等)或将它们保存到“收藏夹”以便稍后查看的用户。
早些时候:
之前,我没有遵循任何特定的数据策略。我的应用基本上是将所有搜索数据(图像)下载到 /Documents/ 目录中。一旦用户将特定项目标记为“收藏夹”,这些项目就会保存到我在 /Documents/ 路径中自定义的“收藏夹”目录中。我的应用程序不使用 iCloud。此外,我还忘记在用户看到下载的搜索数据(图像)并且不再处于同一 View 时清除它们。从那以后,我发现整个策略很糟糕,这也是我的应用被拒绝的原因。
现在:
现在,由于我的应用被拒绝,我加倍努力修复我的应用并使其尽可能完美。我现在遵循的数据策略非常简单:
a) 所有下载的搜索数据(搜索结果的图像和 pList 文件)现在都在 /Library/Caches 目录中创建。
b) 当用户将项目添加到“收藏夹”时,与该项目相关的数据(图像和文本)将保存到 /Documents/ 目录中。
c) /Library/Caches 和/Documents/ 目录中的所有文件都标有属性“不备份”,因为我不想占用 iCloud 上的任何空间。
d) 一旦用户移动到不同的 View 并且不再访问搜索结果,/Library/Caches 目录中的所有搜索相关数据将立即被清除。
e) 在应用程序启动时,我会检查 /Library/Caches 目录中是否有上次 session 的任何残留文件,以防应用程序过早终止。如果找到之前搜索 session 的任何残留文件,我会删除它们。
我的问题是:
A) 我现在遵循的数据存储策略是否可以接受?
B) 我是否需要用“不备份”属性标记 /Library/caches/ 中的任何搜索相关文件,或者是否不需要?
C) 我应该在/Documents/ 目录中用“不备份”属性标记与用户最喜欢的项目相关的数据吗?或者如果用户最喜欢的项目得到备份到 iCloud?
最佳答案
A) 这个数据策略听起来好多了,也许下面列出了一个小的调整。
B) 您不需要用“不备份”属性标记这些文件。此外,您甚至不需要手动清除这些文件。这些文件不会通过 iTunes 或 iCloud 进行备份,只有在磁盘空间不足的某些极端情况下才会被清除。
C) 用户最喜欢的项目当然应该备份到iCloud。这是对 iCloud 的正确使用,因为它是有意用于用户生成的内容的。
关于iphone - iOS 应用程序被拒绝 - 数据存储指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12505148/
我想让我的 NSIS 代码更具可读性。 我需要一些关于明智地编写代码部分的指南(比如 C# 中有 #region #endregion)或任何可以使编写 NSIS 代码变得有趣和容易的信息. 请帮帮我
我正在尝试找出Gherkin中所有可用的语法/格式,例如关于多行参数以及我不知道的所有其他内容。 在挖掘Google搜索结果之后,似乎综合指南位于here中: 我以为那很好,并且it链接到一个页面,该
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 5年前关闭。 Improve thi
当我将 guides 添加到 valueAxesSettings 中时,即使我选择 valueAxesSettings 到 valueAxes 中,它也不起作用。此外,valueAxesSetting
我正在寻找有关如何管理 .NET 程序集的三个不同程序集版本号的指针、建议,甚至是口述。 Product 版本是最简单的,因为这似乎通常由业务决定。然后,文件版本似乎用于部署之间的版本控制,其中实际的
昨晚我脑子里冒出一件事。我想知道为什么我们在项目之间仍然有不同的编码风格。由于风格是个人的东西,我认为最好这样对待它。我们为什么不呢?这有什么技术限制吗? 我举几个例子: // Code sample
我有一个应用程序,用户可以在其中从主 Activity 登录,然后可以使用 ListView 浏览实体的层次结构。因此,Activity 堆栈看起来像这样: A -> B -> B -> B -> .
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 9 年前。 Improve
大家好,上个月我开始学习 CSS。我做的第一件事是阅读我能在 www.w3school.com 上找到的所有内容,之后我开始阅读 CSS Mastery 2nd版本。我已经建立了几个自己的网站并取得了
我希望用户能够上传个人资料图片。 关于如何最好地处理这个问题,是否有任何指导方针?例如 - 在哪里保存图像?和要使用的文件夹结构。- 让用户难以浏览每个人的个人资料照片? 谢谢。 最佳答案 如果你自己
我有兴趣了解有关条件重启系统及其工作原理的更多信息。我不知道从哪里开始。我一直在查看源代码,但想知道是否有更高级别的指南可用。 最佳答案 Kent Pitman:条件系统 http://www.nhp
我想将小型、精简且平均的基于 C 的解析器合并到我的 Android 项目中。我过去做过 JNI 编程,但没有在 Android 上进行任何类型的 native (C) 开发。我的计划是将 C lib
免责声明:我试图搜索类似的问题,但是它返回了关于每个 C++ 问题的信息...此外,我将感谢任何可以提出更好标题的人。 C++ 中有两个著名的循环结构:while 和for。 我故意忽略了 do ..
我一直在尝试批量删除 Wordpress 帖子中的垃圾链接,如下所示: . 它们位于 post_content 列下的 wp_posts 表中。我试图通过在 href 标记中添加 % 的通配符来做到这
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 6 年前。 Improve
我们正在讨论为实体类定义方法的最佳方式 - 作为扩展方法或使用分部类。我们讨论的这类方法不会修改实体的状态,它们是纯粹的“辅助”方法,可以查询状态并返回值。 这两种方法的主要好处是保持实体类干净,同时
您将如何在 Flutter 中在实际屏幕上实现引导层。像这样: 最佳答案 这不是微不足道的。以下是必需的组件: 首先,你必须open a transparent full screen dialog
我们需要通过在 C/C++ 中实现特定算法来解决的大多数科学计算问题都需要远低于 double 的精度。例如,1e-6、1e-7 精度涵盖了 ODE 求解器或数值积分的 99% 情况。即使在我们确实需
我正在研究对专有 UI 框架(用于桌面应用程序)的 RTL 支持,我想知道:是否有关于如何更改小部件渲染的指南? 我正在寻找以下内容的列表: 复选框标签位于复选框左侧,右对齐 工具栏按钮从右到左排列
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我是一名优秀的程序员,十分优秀!