如何在iOS 7中以编程方式获取iOS设备的UDID

时间:2014-05-12 06:38:42

标签: ios iphone ios7 uuid udid

我使用以下代码显示设备的UDID。 但它显示空值

即。 2014-05-12 11:56:06.896 LoginScreen [195:60b] deviceUDID :( null)

NSUUID *deviceId;
deviceId = [UIDevice currentDevice].identifierForVendor;
NSLog(@"deviceUDID: %@",deviceID);

对不起你们所有人。我犯了一个愚蠢的错误

这里NSUUID实例是deviceId,我在NSLog中打印deviceID:)

现在它正在为我工​​作。谢谢大家

5 个答案:

答案 0 :(得分:5)

为了获得设备的UUID,您可以使用以下代码行

[[[UIDevice currentDevice] identifierForVendor] UUIDString];

但您必须检查该应用是否在模拟器或设备上运行。

希望这会对你有所帮助。

答案 1 :(得分:3)

从iOS 7开始,Apple已将UDID隐藏在所有公共API中。任何以FFFF开头的UDID都是伪造的。

答案 2 :(得分:0)

Objective-C

YES

Screenshot for Objective-C

Swift 2

NSString *strUUIDValue = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
    NSLog(@"strUUIDValue : %@", strUUIDValue);

Screenshot for Swift 2

答案 3 :(得分:0)

NSString *string = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; 
string = [string stringByReplacingOccurrencesOfString:@"-" withString:@""]; 
string = [NSString stringWithFormat:@"%@%@",@"FFFFFFFF",string];

答案 4 :(得分:-1)

试试这个

NSUUID *deviceId;
#if TARGET_IPHONE_SIMULATOR
deviceId = [NSUUID initWithUUIDString:@"UUID-STRING-VALUE"];
#else
deviceId = [UIDevice currentDevice].identifierForVendor;
#endif

OR

   NSString *uuid = nil;
   CFUUIDRef theUUID = CFUUIDCreate(kCFAllocatorDefault);
   if (theUUID) {
    uuid = NSMakeCollectable(CFUUIDCreateString(kCFAllocatorDefault, theUUID));
   [uuid autorelease];
   CFRelease(theUUID);
  }