在应用间利用KeyChain共享数据
2014-04-15 14:53
190 查看
在应用间利用KeyChain共享数据
原文地址:点击打开链接Mac OS可以利用KeyChain保存各应用中用户的账号密码,让用户不用重复输入。其实在iOS中也有KeyChain,也可以用KeyChain在应用间共享数据,只是有一些限制,无法像Mac OS一样开放,也无法让用户手动控制。那么KeyChain到底如何使用呢?
我们可以把KeyChain理解为一个Dictionary,所有数据都以key-value的形式存储,可以对这个Dictionary进行add、update、get、delete这四个操作。对于每一个应用来说,KeyChain都有两个访问区,私有区和公共区。私有区是一个sandbox,本程序存储的任何数据都对其他程序不可见。而要想在将存储的内容放在公共区,需要先声明公共区的名称,官方文档管这个名称叫“keychain access group”,声明的方法是新建一个plist文件,名字随便起,内容如下:
“yourAppID.com.yourCompany.whatever”就是你要起的公共区名称,除了whatever字段可以随便定之外,其他的都必须如实填写。这个文件的路径要配置在 Project->build setting->Code Signing Entitlements里,否则公共区无效,配置好后,须用你正式的证书签名编译才可通过,否则xcode会弹框告诉你code signing有问题。所以,苹果限制了你只能同公司的产品共享KeyChain数据,别的公司访问不了你公司产品的KeyChain。
OK,至此最难的部分就讲完了。访问KeyChain的代码官方文档写得很详细(看这里),还有示例代码,这里我就不多讲了。
最后,有一个小地方容易被忽略。配置好Code Signing Entitlements之后,就不能用team证书编译了,但这会给平时的版本迭代开发带来很大问题。其实仔细看Code Signing Entitlements,可以发现可以对Debug和Release分别配置。Debug模式不配置路径,就解决问题了。
相关文章推荐
- 在应用间利用KeyChain共享数据
- 在应用间利用KeyChain共享数据
- 在应用间利用KeyChain共享数据
- 在应用间利用KeyChain共享数据
- android 利用SharedPreferences 在不同应用之间共享数据
- 第四章:iOS应用漏洞利用 ——4.4 Keychain数据存储和安全
- iOS Keychain钥匙串,应用间数据共享打造iOS上的全家桶
- IFC标准是为了满足建筑行业的信息交互与共享而产生的统一数据标准,是建 筑行业事实上的数据交换与共享标准。本文概要介绍了IFC标准的产生及发展 历程,IFC的整体框架结构,简要说明了IFC标准的实现方法和过程,描述了 当前的应用以及我们应该更加积极地利用IFC标准为建筑软件行业服务。
- iOS Keychain钥匙串,应用间数据共享打造iOS上的全家桶
- iOS 中使用 Keychain Services 在应用间共享数据
- 不同应用共享数据——keychain的使用
- 利用KeyChain共享数据(唯一标示)
- keychain 多应用共享数据
- 在不同应用之间共享数据ContentProvider,ContentResolver
- Web应用同一线程内不同架构层次的数据共享
- android 开发利用 html5 JavascriptInterface 实现应用层与 native 互传参数并获取返回数据
- java多线程并发库高级应用 之 多个线程之间共享数据的方式探讨
- 多域名THINKPHP利用MEMCACHE方式共享SESSION数据(转)
- 多线程并发库高级应用 之 多个线程之间共享数据的方式探讨
- 多线程和并发库应用五-线程间数据共享