我们的 iOS 应用程序适用于特定用户。因此,我们使用设备唯一标识符进行用户识别。这种方法在 iOS 6 之前都可以正常工作,因为我们每次都得到相同的值。
NSString *strUniqueIdentifier = [[UIDevice currentDevice] uniqueIdentifier];
在 iOS 7 中,上述方法正在重新调整不同的值,我们在用户识别方面遇到了问题。iOS 7 apis 提供以下替代。
NSUUID *oNSUUID = [[UIDevice currentDevice] identifierForVendor];
[strApplicationUUID setString:[oNSUUID UUIDString]];
我用“identifierForVendor”替换了“uniqueIdentifier”,并创建了 Ad hoc 构建。在 iOS 7 和 iOS 6 设备上安装构建。到目前为止,在 iOS 7 中,我每次都得到相同的值,但是当我们删除并重新安装应用程序时,iOS 6 每次都给出不同的值。
目前应用程序在 App Store 上不可用。所以我不确定这个 api 如何用于 App Store 构建。
问题:1)对于appstore应用程序,“identifierForVendor”是否每次都为iOS 7返回相同的值?或者当用户将来删除并重新安装应用程序时它可能会改变?2)iOS 7 api中的“唯一标识符”是否有任何其他替代方法,它们为iOS 6和7返回相同的值?3) 任何其他建议...