我正在寻找有关iOS钥匙串项目的文档。我的具体问题是,如果钥匙串项在应用程序卸载和重新安装周期后仍然存在。 它似乎从iOS 4(或者甚至iOS 3)那样工作,但我找不到Apple的任何文档,说明这实际上应该以这种方式工作。
我想弄清楚的是,如果我可以信任(不是“希望”或“猜测”),钥匙串中的物品将在应用程序卸载后继续存在。
编辑:我意识到Daij-Djan指出的问题有点不清楚。我正在寻找的是支持众所周知的行为的官方文档。更新2017-04-04:请参阅下面的答案,iOS 10.3测试版中的行为更改。它在iOS 10.3中正常工作,但在将来的版本中可能会有所改变。
答案 0 :(得分:17)
我在Apple开发者论坛上挖掘,而Apple开发人员(eskimo1,又名Quinn)在2012-08-27表示这是当前的行为,但这是他知道没有/记录/行为,所以这个可能会在未来发生变化。他还说删除共享的钥匙串项目总是很棘手,这也是它尚未解决的原因之一。
所以我想这会让问题悬而未决:没有明确的答案。它没有记录,可以随时更改。依赖它可能会在将来引发问题。
更新2017-04-04:
在 iOS 10.3 测试版中,卸载应用时会删除应用的钥匙串信息,但此行为似乎已在最终的10.3版本中删除。在Apple Documentation建议这将改变,我们不应该依赖于在卸载应用程序后完整的钥匙串访问数据。 另请参阅iOS 10.3 beta 3 doesn't persist data of KeychainItem。
答案 1 :(得分:7)
也许这就是你要找的东西 Apple Documentation
注意:在iPhone上,Keychain权限取决于用于签署应用程序的配置文件。请确保在不同版本的应用程序中始终使用相同的配置文件。
答案 2 :(得分:6)
看到我的相关问题:
我看到了它:
'正式'这是因为钥匙串适用于多个应用程序......并且它“属于”操作系统:
钥匙串是一个保存密码的加密容器 多种应用和安全服务。
=> ergo钥匙串幸存了应用程序
PLUS
钥匙串项可以在多个应用之间共享