如何在iOS 7中以编程方式获取iOS设备的UDID
我正在使用下面的代码显示设备的UDID。 但它显示的是空值 i、 e.2014-05-12 11:56:06.896登录屏幕[195:60b]设备UDID:(空) 对不起你们大家。我犯了一个愚蠢的错误 这里NSUID实例是deviceId,我正在NSLog中打印deviceId:)如何在iOS 7中以编程方式获取iOS设备的UDID,ios,iphone,ios7,uuid,udid,Ios,Iphone,Ios7,Uuid,Udid,我正在使用下面的代码显示设备的UDID。 但它显示的是空值 i、 e.2014-05-12 11:56:06.896登录屏幕[195:60b]设备UDID:(空) 对不起你们大家。我犯了一个愚蠢的错误 这里NSUID实例是deviceId,我正在NSLog中打印deviceId:) 现在它对我起作用了。感谢大家苹果从iOS 7开始,将UDID隐藏在所有公共API中。任何以FFFF开头的UDID都是假的ID。试试这个 NSUUID *deviceId; #if TARGET_IPHONE_SIMU
现在它对我起作用了。感谢大家苹果从iOS 7开始,将UDID隐藏在所有公共API中。任何以FFFF开头的UDID都是假的ID。试试这个
NSUUID *deviceId;
#if TARGET_IPHONE_SIMULATOR
deviceId = [NSUUID initWithUUIDString:@"UUID-STRING-VALUE"];
#else
deviceId = [UIDevice currentDevice].identifierForVendor;
#endif
或
要获取设备的
UUID
,可以使用以下代码行
[[[UIDevice currentDevice] identifierForVendor] UUIDString];
但你必须检查应用程序是在模拟器上运行还是在设备上运行
希望这对您有所帮助。Objective-C:
Swift 2:
旁注:这将是UUID而不是UDID:[.可能是重复的,所以你的意思是说在上面的iOS 7中无法获取设备的UDID是的,但你可以使用广告标识符,而不是UDIDOP。Dop正在询问供应商的
标识符应该是可用的。广告标识符可以由用户通过设置选择。@Popeye那$是mista放的。
keOK没有问题我不会删除我的评论。
NSString *uuid = nil;
CFUUIDRef theUUID = CFUUIDCreate(kCFAllocatorDefault);
if (theUUID) {
uuid = NSMakeCollectable(CFUUIDCreateString(kCFAllocatorDefault, theUUID));
[uuid autorelease];
CFRelease(theUUID);
}
[[[UIDevice currentDevice] identifierForVendor] UUIDString];
NSString *strUUIDValue = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
NSLog(@"strUUIDValue : %@", strUUIDValue);
let UUIDValue = UIDevice.currentDevice().identifierForVendor!.UUIDString
print("UUID: \(UUIDValue)")
NSString *string = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
string = [string stringByReplacingOccurrencesOfString:@"-" withString:@""];
string = [NSString stringWithFormat:@"%@%@",@"FFFFFFFF",string];