Keychain
iOS设备中的Keychain是一个安全的存储容器,可以用来为不同应用保存敏感信息比如用户名,密码,网络密码,认证令牌,UUID等
Bug
升级正式版Xcode8 运行了下最近的项目在iOS10模拟器上,没什么大问题,因为使用keychain存储是否首次安装的标识,多次运行后,发现Keychain存取失效了。
SecItemAdd 反回了错误代码 -34018
解决
首先我就想到了是权限问题,但是Xcode并没有配置Keychain权限的地方,只有一个Keychain Share选项,但是Keychain Share用于开发者不同应用之间Keychain共享
试试看的想法打开了
Capabilities => Keychain sharing 点击打开按钮,重试后发现Keychain读写好用了。。。。。,同时项目目录中多了一个项目名.entitlements的配置文件
但是看地下的爆红会发现,虽然开启了Keychain sharing ,并没有在证书、appid 中开启Keychain sharing,也就是说如果这样打包Keychain sharing的功能是不好用的,只是Keychain的读写好用
我只想说。这。。。。。。。。!@#¥%……&*
转载请注明:天狐博客 » iOS10适配之Keychain读写失败