如何让通用的Xcode归档(generic Xcode archive)更改为常用的app归档
你终于把代码调好了,然后兴致勃勃的点了Product->Archive,
然而结果却生成了通用的xcode归档generic Xcode archive。
这种类型的归档无法提交App Store进行验证,也给你的分法带来了困难。
那如何把通用的归档变成常用的app类型的归档呢?
遗憾的是这是个伪命题。我们不考虑如何把通用归档转特定归档,对于这个结果转来转去没什么意义,我们需要知道的是下一次归档时如何使其正确归档,归档成我们需要的app类型。
那么我们需要知道为什么会产生通用归档?
当我们去查看通用的归档包的包内容时,我们就会发现,不止有我们需要的应用程序,还包含了其他的东西。
也就是说,我们的结果不是单一的应用。只有单一的应用包才能生成应用类型的归档。
那包含的其他东西都是些什么内容呢?可能是静态库,framework,头文件,其他可执行文件等。
也就是说,如果我们的归档中包含了非预期的内容比如header files, static libraries, or frameworks,xcode就会生成通用归档。
如何避免生成通用归档?
选择不需生成的target,在build phases 选项中,找到skip install,将其值改为YES。
如果同一个project下的所有target都需要修改的话,直接在project的build settings 中找到 skip install 修改,
此project目录下的所有target就会同步修改了。
关于归档过程的其他常见问题,参见Troubleshooting Application Archiving in Xcode。