使用Keychain配置

1、KeyChain方法:http://www.cnblogs.com/smileEvday/p/UDID.html  项目地质:https://github.com/smileEvday/SvUDID 使用项目中的SvUDIDTools即可。现摘录以下:

  苹果提供了一个方法允许同一个发商的多个APP访问各APP之间的途径,即在调SecItemAdd添加数据的时候指定AccessGroup,即访问组。一个APP可以属于同事属于多个分组,添加KeyChain数据访问组需要做一下两件事情:

  a、在APP target的bulibSetting里面设置Code Signing Entitlements,指向包含AceessGroup的分组信息的plist文件。该文件必须和工程文件在同一个目录下,我在添加访问分组的时候就 因为plist文件位置问题,操作KeyChain失败,查找这个问题还花了好久的时间。

  b、在工程目录下新建一个KeychainAccessGroups.plist文件,该文件的结构中最顶层的节点必须是一个名为“keychain-access-groups”的Array,并且该Array中每一项都是一个描述分组的NSString。

ios7 设备唯一标志 - supershll - 记忆里

“yourAppID.com.yourCompany.whatever”就是你要起的公共区名称,除了whatever字段可以随便定之外,其 他的都必须如实填写。这个文件的路径要配置 在 Project->build setting->Code Signing Entitlements里,否则公共区无效,配置好后, 须用你正式的证书签名编译才可通过,否则xcode会弹框告诉你code signing有问题。所以,苹果限制了你只能同公司的产品共享 KeyChain数据,别的公司访问不了你公司产品的KeyChain。

yourAppID从这里看:

其中第五列最开始的10个字符即为App Identifier

查询与添加或update详见https://github.com/smileEvday/SvUDID 使用项目中的SvUDIDTools.m文件。
首先创建一个Dictionary,其中设置一下查找条件,然后通过SecItemCopyMatching方法获取到我们之前保存到KeyChain中的数据。

最后,有一个小地方容易被忽略。配置好 C ode Signing Entitlements之后,就不能用team证书编译了,但这会给平时的版本迭代开发带来很大问题。其实仔细看Code Signing Entitlements,可以发现可以对Debug和Release分别配置。Debug模式不配置路径,就解决问题了。

2、identifierForVendor:程序卸载后会生成新的值。
3、获取IMEI:
        1)https://github.com/erica/uidevice-extension/blob/master/UIDevice-IOKitExtensions.m 
//IOKit导入介绍:http://ios-blog.co.uk/tutorials/iokit-an-introduction/
       2)、NetworkController方式:
NSString* sdk_path = @ /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator${IPHONE_SDK}.sdk/System/Library/PrivateFrameworks ;  //路径酌情修改
   NSBundle *b = [NSBundle bundleWithPath:[NSString stringWithFormat:@ %@/Message.framework , sdk_path]];  
   if ([b load]) {  
       Class NetworkController = NSClassFromString(@ NetworkController );  
       id nc = [NetworkController sharedInstance];  
       NSLog(@ -- IMEI: %@ , [nc IMEI]);  
   } 
//经测试:失败
       3)、CoreTelephony方式:https://github.com/search?l=Objective-C&q=imei&ref=simplesearch&type=Repositories 貌似只有越狱版本才可以。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值