identifierForVendor是否会更改应用更新?

Ger*_*eri 7 identifier uniqueidentifier ios

我听说过从UIDevice.identifierForVendorApp Store更新应用程序时发生了变化的故事.

这个答案就像"...... 从app store 更新应用程序时,一个影响identifierForVendor计算的错误 ......".请参阅rdar:// 22677034上的相应重要报告.

你有经历过这样的问题吗?
这是一个已修复的错误吗?

Tam*_*gel 9

根据官方文档,简单的重新安装不应该影响identifierForVendor.

但是,如果符合条件,则标识符会发生变化.不要想当然地认为identifierForVendor始终保持不变.总是存在边缘情况,系统错误地将更新识别为重新安装等.

从上面链接的文档:

在iOS设备上安装app(或来自同一供应商的其他应用程序)时,此属性中的值保持不变.当用户从设备中删除所有该供应商的应用程序并随后重新安装其中一个或多个应用程序时,该值会更改.使用Xcode安装测试版本或使用ad-hoc分发在设备上安装应用程序时,该值也会发生变化.因此,如果您的应用程序将此属性的值存储在任何位置,则应优雅地处理标识符更改的情况.

  • 我遇到了在更新或系统更新期间为7000个用户中的大约45个用户更改了`identifierForVendor`.仍然不知道为什么.如果你想使用一个唯一的字符串,似乎将"identifierForVendor"保存到keychain是一个更合适的解决方案.但在这种情况下,使用`identifierForVendor`或随机字符串将是相同的,因为它已经保存在钥匙串中. (7认同)