美文网首页IOS知识积累
关于app上架所遇到的一些问题汇总(持续更新中...)

关于app上架所遇到的一些问题汇总(持续更新中...)

作者: AgoniNemo | 来源:发表于2016-05-14 10:59 被阅读2685次

          iOS app上架是很坑爹的,在第一次上架过程中,博主一下遇到了N多的报错,当时博主心里是崩溃的。在崩溃过后,博主开始了漫长的谷歌生活,最后艰辛的上架了,现在博主为了给广大的iOS开发者提供一些问题的解决方法,希望能帮助大家,加快大家的工作效率,主要是可以不用加班,说多了都是泪。。。


    问题一:


    这个问题就是你Xcode上设置的bundleID与证书上的bundleID不一致导致的,把他们修改一样都好了。

    问题二:


    这个问题有很多的答案,我只提供一个大多数能解决方法

    1.在钥匙串访问>钥匙串修改Apple Worldwide Developer Relations Certification Authority证书:右键显示简介调整"总是信任" 为 "系统默认"。

    2.删除已过期的Apple Worldwide Developer Relations Certification Authority证书,并下载新的Apple Worldwide Developer Relations Certification Authority证书,双击安装。

    3.删除相关的 provisioning profiles,然后重新添加。(Xcode中的证书配置文件路径:~/Library/MobileDevice/Provisioning Profiles)

    问题三:

    Getting ITMS-4238 “Redundant Binary Upload” error no mater what I change the build version or app version tobe higher

    这个是已经上传了同一个版本的APP了,不能再继续上传,如果需要重新上传,就需要改版本号。

    问题四:

    iPhone App Submitting - Error ITMS-90171 Invalid Bundle Structure Can't Contain Standalone Executables

    这个是引入的第三方framework所带的资源包有问题,有可能是bundle里info.plist使用到的资源在bundle里没有

    问题五:

    ERROR ITMS-90474: "Bundle Invalid. iPad Multitasking support requires there orientations: 'UIInterfaceOrientationPortrait,UIIinterfaceOrientationPortraitUpsideDown,UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight'. Found 'UIInterfaceOrientationPortrait' in bundle.

    在 TARGETS > iOS > General > Deployment Info 勾选 “Requires full screen”


    问题六:

    ERROR ITMS-90542: "Invalid CFBundleSupportedPlatforms value. The key 'CFBundleSupportedPlatforms' in the Info.plist file in bundle 'Payload/PgapIos.app/GoogleMaps.bundle' contains an invalid value '( "iPhoneSimulator" )'.

    这个是编译bundle的时候,是用模拟器来编译的,解决方法是:在编译bundle的时候选择真机

    ERROR ITMS-90086: Missing 64-bit support. Submission fails with error on submit app on iTunes

    在 build settings 中的Valid Architectures, 添加arm64让APP支持 64位的机器。XCode7不会有这种情况

    问题七:

    ERROR ITMS-90535 Unexpected CFBundleExecutable

    在我这里是因为我的bundle里是生成了一个可执行文件,从新做一个bundle文件,注意bundle项目Build Settings 中的Mach-o Type 要选择 Static Library。如果是第三方的就把bundle里info.plist的 Executable file字段删除掉(我自己的bundle如果删除,上传的时候会提示bundle是损坏的),然后重新打包。

    问题八:

    ERROR ITMS-90034: Missing or invalid signature

    这个其实还是因为bundle里有个可执行文件,在打包的时候没能进行签名导致的。

    问题九:

    ERROR ITMS-90096:"You binary is not optimized for iPhone 5....".

    在工程里的Images.xcassets添加并设置LaunchImage对解决ERROR ITMS-90096根本不会起到任何作用,需要单独添加针对iPhone 5的载入图片。关键点有三项:1、图片的名称必须叫Default-568.png。2、必须把图片放在工程的根目录下。3、图片尺寸必须是320*568。

    然后在plist中添加

    问题十:

    使用Application Loader 上传ipa出现的错误提示“application loader上传出错 生成的API分析文件太大”解决方法:解决办法就是修改Xcode里面的Build

    问题十一:

    在Archive项目 时,出现了“Your build settings specify a provisioning profile with the UUID “487F3EAC-05FB-4A2A-9EA0-31F1F35760EB”, however, no such provisioning profile was found”的出错。一直提示指定UUID的provisioning profile找不到,感觉很奇怪。明明自己的provisioning profile是刚下载好的,并且全是新安装。于是通过谷歌找到了答案。

    参考地址:http://stackoverflow.com/questions/1760518/codesign-error-provisioning-profile-cannot-be-found-after-deleting-expired-prof

    这里所说的就是要通过修改你的项目的.xcodeproj文件来解决上述的错误。

    1.找到项目中的**.xcodeproj文件,点击右键,show package contents(打开包内容)。

    2.打开后找到project.pbxproj文件,用文本编辑器打开。其实就是右键,点击open就好了。

    3.打开这个文件后,按command+F,在这个文件中查找“PROVISIONING_PROFILE",找到和这个“

    PROVISIONING_PROFILE="487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";"PROVISIONING_PROFILE[sdk=iphoneos*]"="487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";”类似的都删除。(注意:只删除双引号里面的487F3EAC-05FB-4A2A-9EA0-31F1F35760EB就可以了)

    问题十二:

    在要上传的包上右键[Show in Finder]然后依次展开[xxxx.xcarchive][Products][Applications][xxxx] // xxxx–项目名

    然后搜索所有的info.plist

    找到是哪个plist含有[CFBundleSupportedPlatforms]属性,看是那个三方库包含的这个plist,然后到Xcode里面删除该属性。

    问题十三:


    推送证书报警

    这个原因也有多种,一个出现比较多的原因就是,你之前安装的描述文件没有包含推送证书。重新登录到开发者中心,查看描述文件。

    选择全部

    你会发现Status变成的状态是黄色的(正常是绿色),如下图。

    正常

    点击Edit,然后选择Cenerate就行了。最后把描述文件下载,安装。

    相关文章

      网友评论

        本文标题:关于app上架所遇到的一些问题汇总(持续更新中...)

        本文链接:https://www.haomeiwen.com/subject/wskmkttx.html