我正在保存钥匙串中的一些数据,但在每次应用程序更新后都会丢失数据。当我在用户默认值中保存某些内容时,我遇到了同样的问题。这很重要,因为我用它来存储创建的唯一标识符。有什么不对? 感谢您的任何提示。
答案 0 :(得分:5)
我的最新应用程序遇到了同样的问题。我们发现,如果较新的应用程序具有8.0的最低支持版本,Apple显然正在擦除Keychain中针对iOS 8之前的应用程序的数据。 但是,如果将受支持的最低版本设置为iOS 7.0,则不会删除Keychain数据。
显然,所有使用Keychain的应用程序在将最低支持版本设置为iOS 8.0并推送到AppStore时都会遇到此问题。
答案 1 :(得分:1)
钥匙串数据丢失可能是由于keychain-access-groups
权利的变化。
在新旧应用中为此键保持相同的值将解决此问题。
答案 2 :(得分:0)
我正面临着同样的问题。我的部署目标是iOS 10。
我正在使用-
将JWT令牌存储在钥匙串中A0SimpleKeychain().setString(token, forKey:"user-jwt")
然后使用以下内容将其取回-
A0SimpleKeychain().string(forKey: key)
我在生产日志中看到,对于某些用户而言,在应用程序升级后,不会从钥匙串中获取令牌。是iOS问题还是我在这里错过的任何内容。请提出建议。
最近在iOS 12.4上看到此问题。
我为此使用Simple Keychain。