现在的位置: 首页 > 综合 > 正文

设备唯一识别码

2018年08月03日 ⁄ 综合 ⁄ 共 837字 ⁄ 字号 评论关闭

从今年年初到现在, 一直在接活, 没有停过, 先是《时装》ipad版,然后是CCTV5, 然后是会点会汇通, 然后是黔西南移动客户端。 

今天终于完成了黔西南这个项目中的上传图片和视频的问题。 9月份苹果的SWIFT就正式与开发者见面了, 在这段时间内需要腾出时间去全力搞SWIFT了。 

在 SWIFT出来之前需要花些时间把这段时间的问题记录下来。

现在说一下这个设备唯一识别码的问题。

最好不要使用IDFA, 即苹果自已提供的这个, 使用这个的话,你的代码中需要使用iad之类。 否则可能被拒。

最好使用OpenUDID

在ios7.0以下, 使用设备的mac地址和程序的bundle id再进行一下md5, 是个很好的方法。

在ios7.0及以上, 使用OpenUDID值生成一个值, (注:该值每次生成会是不一样的。)

上面这两种情况都不宜每次都执行, 较好的办法是每次生成后,就进行存储。 下次直接取该值即可。

代码如下:

- (NSString *) uniqueDeviceIdentifier{

    if ([[UIDevice
currentDevice].systemVersion
floatValue] < 7.0) {

        NSString *bundleIdentifier = [[NSBundle
mainBundle] bundleIdentifier];

        NSString *macaddress = [[UIDevice
currentDevice] macaddress];

        

       
NSString *stringToHash = [NSString
stringWithFormat:@"%@%@",macaddress,bundleIdentifier];

       
NSString *uniqueIdentifier = [stringToHash
stringFromMD5
];

        

       
return uniqueIdentifier;

    }

   
else {

       
return [OpenUDID
value];

    }

}

抱歉!评论已关闭.