如何在ios中生成UUID [英] How to generate UUID in ios
问题描述
如何在目标c中获取UUID,就像在Java中一样,UUID用于生成代表128位值的唯一随机数。
How to get a UUID in objective c, like in Java UUID is used to generate unique random numbers which represents 128 bit value.
推荐答案
尝试:
CFUUIDRef udid = CFUUIDCreate(NULL);
NSString *udidString = (NSString *) CFUUIDCreateString(NULL, udid);
更新:
自iOS 6起,有一种更简单的方法来生成UUID 。和往常一样,有多种方法可以做到:
As of iOS 6, there is an easier way to generate UUID. And as usual, there are multiple ways to do it:
创建一个UUID字符串:
Create a UUID string:
NSString *uuid = [[NSUUID UUID] UUIDString];
创建一个UUID:
[[NSUUID UUID]; // which is same as..
[[NSUUID] alloc] init];
创建一个 NSConcreteUUID
类型的对象,并且可以可轻松转换为 NSString
,如下所示: BE5BA3D0-971C-4418-9ECF-E2D1ABCB66BE
Creates an object of type NSConcreteUUID
and can be easily casted to NSString
, and looks like this: BE5BA3D0-971C-4418-9ECF-E2D1ABCB66BE
来自文档的注释:
注意: NSUUID类与CoreFoundation的CFUUIDRef没有免费桥接。如果需要,使用UUID字符串在CFUUID和NSUUID之间进行转换。两个NSUUID对象不能保证与指针值相当(如CFUUIDRef所示); use isEqual:比较两个NSUUID实例。
Note: The NSUUID class is not toll-free bridged with CoreFoundation’s CFUUIDRef. Use UUID strings to convert between CFUUID and NSUUID, if needed. Two NSUUID objects are not guaranteed to be comparable by pointer value (as CFUUIDRef is); use isEqual: to compare two NSUUID instances.
这篇关于如何在ios中生成UUID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!