我意识到你不能从 iOS 包中删除一个项目,因为它已经签名,但是有没有办法包含一个文件并且让它不是“签名”包的一部分,但在安装时仍然存在?
用例基本上是安装应用程序,读取文件内容,存储在钥匙串中,然后删除文件。
感谢您的任何帮助和指导。
注意 -> 该应用程序无法访问互联网来获取此文件。并且能够在阅读一次后删除文件(或擦除文件的内容)是我真正需要的。此外,我们在这里是临时分发,我们不经过任何 App Approval 流程。
我意识到你不能从 iOS 包中删除一个项目,因为它已经签名,但是有没有办法包含一个文件并且让它不是“签名”包的一部分,但在安装时仍然存在?
用例基本上是安装应用程序,读取文件内容,存储在钥匙串中,然后删除文件。
感谢您的任何帮助和指导。
注意 -> 该应用程序无法访问互联网来获取此文件。并且能够在阅读一次后删除文件(或擦除文件的内容)是我真正需要的。此外,我们在这里是临时分发,我们不经过任何 App Approval 流程。
简短的回答是否定的。应用程序包是只读的。
正如其他人所指出的,在需要可编辑的包中交付数据的通常解决方案是将数据从应用程序包复制到文档(或其他应用程序文件夹),以便您拥有可编辑的副本。但是,您仍然无法从捆绑包中删除任何内容。
由于您的项目存在无法通过 Internet 传输数据的限制,并且您正在通过 Ad-Hoc 分发交付应用程序,因此您似乎主要担心的是交付的文件无法访问,即使在越狱设备上也是如此。
由于您无法删除文件以使其不可读,因此下一个最佳选择是加密文件以使其不可读。您的应用程序可以解密内容、使用它并处置解密的版本。当然,这仍然不是防弹的,因为解密需要一个您必须保护的密钥,但它与您将获得的一样防弹。