为什么要说这两种方式呢?
因为,今天版本迭代使用 Application Loader 上传用 iTunes打包的文件时 碰到了一堆以往不曾碰到的错误信息,但是用另外一种打包方式确没有问题。
ERROR ITMS-90166: "Missing Code Signing Entitlements. No entitlements found in bundle 'com.apple.dt.xctestSymbolicator' for executable 'Payload/HZProject.app/Frameworks/XCTest.framework/XPCServices/xctestSymbolicator.xpc/xctestSymbolicator'."" ERROR ITMS-90166: "Missing Code Signing Entitlements. No entitlements found in bundle 'com.apple.dt.XCUIRecorderService' for executable 'Payload/HZProject.app/Frameworks/XCTest.framework/XPCServices/XCUIRecorderService.xpc/XCUIRecorderService'."" ERROR ITMS-90179: "Invalid Code Signing. The executable 'Payload/HZProject.app/Frameworks/XCTest.framework/XPCServices/XCUIRecorderService.xpc/XCUIRecorderService' must be signed with the certificate that is contained in the provisioning profile." ERROR ITMS-90362: "Invalid Info.plist value. The value for the key 'MinimumOSVersion' in bundle HZProject.app/Frameworks/IDEBundleInjection.framework is invalid. The minimum value is 8.0" ERROR ITMS-90362: "Invalid Info.plist value. The value for the key 'MinimumOSVersion' in bundle HZProject.app/Frameworks/XCTest.framework is invalid. The minimum value is 8.0" ERROR ITMS-90125: "The binary is invalid. The encryption info in the LC_ENCRYPTION_INFO load command is either missing or invalid, or the binary is already encrypted. This binary does not seem to have been built with Apple's linker."
之前一直用 iTunes 打包(在下文中称为 iTunes打包),没有碰到过这种问题;Google了半天还是得不到解决,因此我换了另外一种打包方式 Archive打包(在下文中称为 Archive打包),就不存在这种莫名其妙的问题了。下面就说说这两种打包方式。
第一种
iTunes打包详见我的博客:传送门
第二种
关于配置发布证书、版本号等的信息,在此不做讨论。
首先:
如图中所示,选中 Xcode —> Archive —> Archive.然后就出弹出下图;
然后:
注意,这里选择 Export!!
接下来:
按图中红色框内操作。
然后:
此处选择你的开发者账号,生成和Connection中相同的Bundle Id的构建版本。
下面两部,就可以导出 .ipa 文件到指定目录下:
指定目录(.ipa保存在该文件夹内):
此时,我们就已经成功导出了 .ipa 文件,打开我们上面指定的文件夹:
接下来,就是上传ipa文件了,可以参照我的博客 ipa打包和上传
尊重作者劳动成果,转载请注明: 【kingdev】