刚升级了10.8系统、XCode4.5+iOS6。
程序提交到AppStore时,一直报
1) iPhone/iPod Touch: application executable is missing a required architecture: At least one of the following architectures must be present: armv6
2) Application faild codesign verification. The signature was invalid, contains dissallowed entitlements, or was not signed with and iPhone Distribution Certificate.
3) Unable to extract entitlements from application: (null)
搜遍了网上所有的解决办法,
1)有人说重建证书,做了不好用。
2)有人说在Build Settings把architectures改成armv6 armv7这两个,试了不行。
3)有人说用下面的方法,我的本来就是normal
First update the Project build settings:
- Click on Project ->
<your project>
-> Build Settings - Search for "build variants"
- Click on the arrow icon next to Build Variants in the search results to expand the section
- Remove any existing entries and replace them with normal
Next update the Target build settings:
- Click on Targets ->
<your project>
-> Build Settings - Search for "build variants"
- Click on the arrow icon next to Build Variants in the search results to expand the section
- Remove any existing entries and replace them with normal
4)有人说做一个Entitlements.plist放到项目里,这个跟AppStore没有关系啊,没办法我做了一个试试吧,果然不起作用
5)甚至有一个日本人把icon files(iOS 5)中的图标只留retina的文件就解决了,真是汗,我以前没有icon files(iOS 5),加一个吧,没有作用
最后按照日本人的思路,为什么icon files(iOS 5)只留retina就好了呢,我的程序的Depolyment Target一直是4.3,于是我把它改成5.0了,居然通过Validate了。
不知道其中的原因,不过搞这个搞到半夜,总算是搞好了,只能牺牲一部分4.X用户利益了,这个xcode4.5真心莫名其妙啊。