获取UUID两种方法,并让UUID唯一的方法

原创 2015年07月08日 17:21:16

方法一、

CFUUIDRefpuuid = CFUUIDCreate(nil);

    CFStringRefuuidString = CFUUIDCreateString(nil, puuid);

    NSString*result = (NSString*)CFBridgingRelease(CFStringCreateCopy(NULL, uuidString));

    CFRelease(puuid);

    CFRelease(uuidString);

return  result;

方法二、

NSString*myUUIDStr = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; 



UUID 重装后改变;


为了确保UUID唯一, 需要使用更为安全的keychain

下载SSKeychain


#import "SSKeychain.h"

#pragma mark- 获取UUID

- (NSString *)getIOSUUID

{

    NSString *retrieveuuid = [SSKeychain passwordForService:@"xxxxx" account:@"uuid"];

    

    if ( retrieveuuid == nil || [retrieveuuid isEqualToString:@""]){

        CFUUIDRef uuid = CFUUIDCreate(NULL);

        assert(uuid != NULL);

        CFStringRef uuidStr = CFUUIDCreateString(NULL, uuid);

        

        retrieveuuid = [NSString stringWithFormat:@"%@", uuidStr];

        

        [SSKeychain setPassword:retrieveuuid forService:@"xxxxx" account:@"uuid"];

    }

    NSLog(@"UUID: %@", retrieveuuid);

    return retrieveuuid;

}



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Objective C - CFUUIDRef 创建UUID:

1.随机生成一串字符.可以用来当做文件名或其他: + (NSString*) createUuidString { // create a new UUID which you own ...

iOS 中CFUUIDRef、 CFUUIDCreate 、CFUUIDCreateString 生成唯一字符串

- (NSString *)pathForTemporaryFileWithPrefix:(NSString *)prefix {     NSString *  result;     ...

iOS9 获取手机的唯一标识(一)——CFUUID、NSUUID、IDFA、IDFV、UDID、OpenUDID 的区别

在2013年3月21日苹果已经通知开发者,从2013年5月1日起,访问UIDID的应用将不再能通过审核,替代的方案是开发者应该使用“在iOS 6中介绍的Vendor或Advertising标示符”。...

iOS 中CFUUIDRef、 CFUUIDCreate 、CFUUIDCreateString 生成唯一字符串

- (NSString *)pathForTemporaryFileWithPrefix:(NSString *)prefix {     NSString *  result;  ...

CFUUIDRef theUUID = CFUUIDCreate(NULL); CFStringRef guid = CFUUIDCreateString(NULL, theUUID);

CFUUIDRef theUUID = CFUUIDCreate(NULL);CFStringRef guid = CFUUIDCreateString(NULL, theUUID);CFReleas...

iOS中CFUUIDRef,CFUUIDCreate声称唯一字符串

CFUUIDRef theUUID = CFUUIDCreate(NULL);   CFStringRef guid = CFUUIDCreateString(NULL, theUUID);...

iOS 关于UUID的理解

先来摘抄一段百度百科的资料: UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Softwar...

UUID生成方法总结

转自:http://puxx.blog.ustc.edu.cn/index.php/2013/06/28/uuid%E7%94%9F%E6%88%90%E6%96%B9%E6%B3%95%E6%80%...
  • yasi_xi
  • yasi_xi
  • 2013年07月11日 09:59
  • 38797

UUID的唯一性问题

重复是肯定会重复的,32位的UUID,经过16^32+1次生成后,必然会产生至少一次重复,当然,不追求这个必然,偶然产生一次重复需要的平均次数比这个少得多。 不过……后面转折来了,16^32=……没算...

Java中生成的UUID(全局唯一标识符-----(唯一)-------)

在写程序中,我们涉及id的问题时候,时常会担心重复的问题,这个就可以解决id重复问题...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:获取UUID两种方法,并让UUID唯一的方法
举报原因:
原因补充:

(最多只允许输入30个字)