我可以在模拟器中运行旧的应用程序存档吗?

Res*_*h32 15 xcode objective-c ios

当我们通过XCode将新版本的iOS应用程序部署到App Store时,会生成一个存档.

有没有办法获取旧存档并在模拟器中运行它?我想这样做是为了能够轻松测试服务器端代码与所有以前版本的应用程序(或至少当时主要使用的两个版本)的向后兼容性.

我知道我可以提交到GIT存储库并提取特定版本,但这有两个问题:a.它比简单地运行档案更复杂,b.它很容易出错,并且在它完成的机器上停止开发新版本,并且c.可能存在一些与编译器更改有关的偏差,或者在渲染版本难以编译之间的任何其他XCode更改.

我在StackOverflow上找不到任何帮助,也没有在XCode的Archive存储库中找到这种可能性的任何迹象.我应该提交功能请求@ Apple吗?

jn_*_*pdx 9

不,您不能为App Store生成存档并在模拟器中运行 - 即使您可以处理签名问题等,为App Store生成的存档包含为ARM处理器编译的代码, i-devices有.为模拟器构建的代码是为x86处理器编译的,因此它可以在Mac上运行.


zou*_*oul 5

一个相当简单的方法是通过Test Flight.我们通过Test Flight定期测试新版本,旧版本停留在那里,随时可以返回它们.它与您最终提交给App Store的版本不同,但是这一切都是正确的,因为App Store版本使用分发证书进行签名,除非通过商店安装,否则AFAIK不会在任何地方运行.