查看了很多问题,因为有很多问题具有相同的主题,但没有找到相同的问题,所以发布。
问题
希望为 iOS
设备生成唯一标识符
,就像用户安装应用程序并重新安装一样生成相同的标识符。
已解决但无法使用 64 位设备
我使用此代码获取 iOS
设备的唯一标识符,它工作正常,但当我在 64 位 iOS 设备
上运行它时,它在每个上都会给出不同的结果安装。请查看是否有人知道可能的解决方案。
- (NSString *)GetUUID {
@try {
UIDevice *device = [UIDevice currentDevice];
return [[device identifierForVendor]UUIDString];
}
@catch (NSException *exception) {
return @"00000-00000-0000-00000";
}
}
最佳答案
identifierForVendor
只要设备上安装了来自同一开发商(供应商)的应用程序,就会保持不变。
因此,如果用户卸载了您的应用程序并且用户设备上没有您使用的其他应用程序,identifierForVendor
当用户重新安装您的应用程序时会有所不同。
Apple 已明确表示他们不希望开发人员跟踪设备或按设备安装。因此,您无法再从设备中获取任何唯一标识符。
identifierForVendor
的变化可能与一些重新安装问题有关。我一直在追踪 identifierForVendor
并没有看到这个问题。
关于ios - 在 64 位 iOS 设备上更改唯一标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24424350/