当我们在 iTunes Connect 中进行内部测试发布时,用户使用 Testflight 安装应用程序。所以我的问题是:
vendorID( NSUUID *identifierForVendor) 会变吗?
根据 apple 的文档,Appstore 的正常更新不应更改 vendorID,但也提到 Ad-Hoc distribute 可能会导致其他问题。
更多解释,我的用例是:设备安装当前的实时版本应用程序,然后在 iTunes Connect 中使用内部测试来安装具有相同包 ID 的测试版本。在那种情况下,实时应用程序已被覆盖,我注意到供应商 ID 可能已更改。
最佳答案
喜欢https://stackoverflow.com/a/16680879/2450847中的列表(感谢 aramusss 提供),正常应用程序更新(至少从 Appstore 更新),不要更改 VendorID。
测试结果(非常感谢@invertedfjord的插件): 对于具有相同包 ID 的应用。
测试构建,包括 Xcode 直接构建、testFilght 内部测试构建、testFlight 外部构建,都具有相同的供应商 ID,并且在任何版本更新或覆盖安装期间不会更改。
Appstore 构建具有相同的供应商 ID,并且不会更改任何版本更新。
测试版本和 Appstore 版本具有不同的供应商 ID。在这种情况下,测试版本和 Appstore 版本之间的任何更新或覆盖安装都会更改供应商 ID。
解释:
VendorID 应由 Appstore 提供,如果没有,则由 bundleID 生成。 App 的测试版本(甚至是 testFlight 版本)肯定不会直接从 Appstore 购买。因此,与 Appstore 版本相比,VendorID 会有所不同。
关于ios - iTunes Connect、内部测试、供应商 ID 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28304000/