除非供应商的所有应用程序都从设备中删除,否则不应更改identifierForVendor。如果我有一个更新的应用程序会发生什么。 identifierForVendor可以改变吗?制定这个问题的另一种方法是:应用程序升级是否与卸载和安装相同(至少在某种意义上)?
我问的原因是,如果我从App Store安装当前版本的应用程序,然后通过XCode“存档”新版本并将其安装在iTunes上,则identifierForVendor会发生变化。我不知道这是特殊情况,还是“普通”App更新/升级的情况。
答案 0 :(得分:2)
简答 - 在描述的情况下,identifierForVendor将是不同的。
但对于从AppStore下载的用户来说,它会是一样的。如果版本是6.1及以上。 6.0.x存在已知问题。
我已经通过Apple支持和向AppStore提交我自己的应用程序更新来验证这一点。
答案 1 :(得分:1)
如文档中所述,从app store更新应用程序时不应该更改。
如果您要更新安装了itunes的应用程序,然后使用基于临时配置或任何配置的Xcode或ipa进行更新,您将获得不同的值。你需要使它保持一致,特别是adhoc,dev to dev,app store到app store。
再次从应用商店更新不应该更改。然而。请注意这一点。 2015年5月至7月期间发生了影响identifierForVendor计算的错误。如果您在任何加密方案中依赖此值,则可能无法对其进行解密。 Apple声称已经纠正了这个问题,现在推动另一次更新应该恢复原来的价值,就像在关键时期之前一样。
在任何情况下,您应该优化处理在更新期间identifierForValue的更改。