我正在寻找有关 iOS 钥匙串(keychain)项的文档。我的具体问题是钥匙串(keychain)项目是否会在应用程序卸载和重新安装周期中继续存在。 它似乎从 iOS 4(甚至可能是 iOS 3)开始就以这种方式工作,但我找不到任何来自 Apple 的文档说明这实际上应该以这种方式工作。
我想弄清楚的是,我是否可以相信(不是“希望”或“猜测”)钥匙串(keychain)中的项目会在应用程序卸载后继续存在。
编辑:我意识到这个问题有点不清楚,正如 Daij-Djan 所指出的那样。我正在寻找的是支持众所周知的行为的官方文档。
更新 2017-04-04:请参阅下面我的回答,iOS 10.3 测试版中的行为更改。它在 iOS 10.3 中照常工作,但在未来的版本中可能会发生变化。
最佳答案
我在 Apple 开发者论坛上四处搜寻,一位 Apple 开发者(eskimo1,又名 Quinn)在 2012-08-27 表示这是当前的行为,但据他所知还没有/记录/行为,所以这个将来可能会改变。他还表示,删除共享钥匙串(keychain)项总是很棘手,这也是该问题尚未得到解决的原因之一。
所以我想这让问题悬而未决:没有明确的答案。它没有记录,可以随时更改。依赖它可能会在未来引起问题。
2017-04-04 更新:
在 iOS 10.3 测试版中,应用程序的钥匙串(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/