iOS 数据保护不适用于已安装的应用程序

Posted

技术标签:

【中文标题】iOS 数据保护不适用于已安装的应用程序【英文标题】:iOS Data Protection not working on already installed app 【发布时间】:2014-09-17 11:50:47 【问题描述】:

我想在我的应用中开启“数据保护”。另外,我想检查它是否可以与现有应用程序一起使用,因为我最初没有使用它。为了测试这一点,我使用了开发人员配置文件。首先,我在启用密码的设备中安装了之前的应用程序(DataProtection 已关闭),并确保用户的文档在 Documents 文件夹中可用。然后我在我的配置文件中打开了数据保护,并使用新的配置文件重建了应用程序。然后我将它安装在以前的应用程序之上。然后我锁定了设备并使用 Xcode 下载了应用程序沙箱,发现我可以毫无问题地访问沙箱。我做了几次,但沙盒仍然可以访问。

然后我删除了该应用程序并重新安装了我已打开数据保护的应用程序。然后我下载了应用程序沙箱,我注意到沙箱中的所有文件夹(包括 Documents 文件夹)都是空的。

这意味着数据保护仅适用于新安装的应用程序。我做错什么了吗?我也想在我现有的应用程序上打开数据保护。我怎样才能做到这一点?

【问题讨论】:

【参考方案1】:

由于我没有对这个问题给予足够的关注,我将它发布到了苹果开发者论坛。他们的建议是在启用数据保护之后如果我们要更新应用程序(不删除旧应用程序),我们应该为包括旧文件在内的所有文件明确设置数据保护。

所以我所做的是遍历我的文档文件夹并将数据保护属性设置为我所有的旧文件。 我还在创建新文件的所有地方设置数据保护属性。这解决了我的问题。

所以最重要的是,如果您要在旧应用中启用数据保护,最好明确地做到这一点。

【讨论】:

以上是关于iOS 数据保护不适用于已安装的应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Font BebasNeue不适用于iOS 11

推送通知不适用于 iOS9 及更高版本

iOS 应用内购买不适用于真实账户,但可以使用沙盒

Flutter Firebase 动态链接不适用于新的 ios 应用安装

Diawi.com 不适用于 iOS9

IOS中的Facebook登录适用于模拟器,但不适用于安装了本机应用程序的设备