我正在寻找有关iOS钥匙串(keychain)项目的文档。我的具体问题是,钥匙串(keychain)物品是否会在应用程序卸载和重新安装周期中幸免于难。
自iOS 4(甚至iOS 3)以来,它似乎可以这样工作,但是我找不到苹果公司提供的任何文档,说明它实际上应该是这样工作的。

我要弄清楚的是,如果我可以信任(而不是“希望”或“猜测”)钥匙串(keychain)中的项在应用程序卸载后仍然可以幸免。

编辑:我意识到,正如Daij-Djan所指出的,这个问题有点不清楚。我正在寻找的是官方文件,该文件备份了众所周知的行为。

更新2017-04-04:请参阅下面的答案,iOS 10.3 Beta中的行为更改。它在iOS 10.3中照常工作,但在将来的版本中可能会更改。

最佳答案

我在Apple开发人员论坛上挖了一个苹果开发人员(eskimo1,又名Quinn)在2012-08-27指出,这是当前的行为,但据他所知,这不是/documented/行为,因此可能会改变 future 。他还说,删除共享的钥匙串(keychain)项总是很棘手的,这是目前尚 Unresolved 原因之一。

因此,我想这将使问题悬而未决:没有确定的答案。它没有记录,可以随时更改。依赖它可能会在将来引起问题。

更新2017-04-04:

iOS 10.3 beta中,卸载该应用程序时会删除该应用程序的钥匙串(keychain)信息,但是在最终的10.3版本中似乎已删除了此行为。建议在Apple Documentation更改此设置,我们不应该依赖于应用程序卸载后完整的钥匙串(keychain)访问数据。
另请参见iOS 10.3 beta 3 doesn't persist data of KeychainItem

关于ios - iOS钥匙串(keychain)中的项目能否在应用程序卸载和重新安装后继续存在?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18911434/

10-09 06:05
查看更多