当我们在iTunes Connect中进行内部测试发布时,用户使用Testflight安装应用程序 . 所以我的问题是:
vendorID(NSUUID * identifierForVendor)会改变吗?
基于Apple的doc,Appstore的正常更新不应该更改vendorID,还要提到Ad-Hoc分发可能会导致其他问题 .
有关更多说明,我的用例是:设备安装当前的实时版本应用程序,然后在iTunes Connect中使用内部测试来安装具有相同捆绑ID的测试版本 . 在这种情况下,实时应用程序已被覆盖,我注意到供应商ID可能已更改 .
2 回答
像https://stackoverflow.com/a/16680879/2450847中的列表(感谢aramusss提供的),正常的App更新(至少从Appstore),做 NOT 更改VendorID .
Test result(thanks a lot for @invertedfjord's add on) :对于具有相同捆绑ID的应用 .
测试版本,包括Xcode直接构建,testFilght内部测试构建,testFlight外部构建,在任何版本更新或覆盖安装期间都具有相同的供应商ID和 will not be changed .
对于任何版本更新,Appstore版本具有相同的供应商ID和 will not be changed .
测试版本和Appstore版本具有不同的供应商ID . 在这种情况下,测试版本和Appstore之间的任何更新或覆盖安装都会构建 will change 供应商ID .
Explanation :
VendorID应由Appstore提供,如果不是,则由bundleID生成 . 测试版本的App(甚至testFlight版本)肯定不会直接从Appstore购买 . 因此,与Appstore版本相比,VendorID将有所不同 .
如果您在iTunes Connect内部使用TestFlight进行测试而不使用testflightapp.com,则不应更改 . 但是,必须提一下,Apple隐藏了这个供应商ID(您需要搜索一下),这可能意味着Apple不希望您使用它 .