????? iOS app上架是很坑爹的,在第一次上架過程中眷茁,博主一下遇到了N多的報錯,當(dāng)時博主心里是崩潰的纵诞。在崩潰過后上祈,博主開始了漫長的谷歌生活,最后艱辛的上架了浙芙,現(xiàn)在博主為了給廣大的iOS開發(fā)者提供一些問題的解決方法登刺,希望能幫助大家,加快大家的工作效率嗡呼,主要是可以不用加班纸俭,說多了都是淚。晤锥。掉蔬。
問題一:
這個問題就是你Xcode上設(shè)置的bundleID與證書上的bundleID不一致導(dǎo)致的,把他們修改一樣都好了矾瘾。
問題二:
這個問題有很多的答案女轿,我只提供一個大多數(shù)能解決方法
1.在鑰匙串訪問>鑰匙串修改Apple Worldwide Developer Relations Certification Authority證書:右鍵顯示簡介調(diào)整"總是信任" 為 "系統(tǒng)默認"。
2.刪除已過期的Apple Worldwide Developer Relations Certification Authority證書,并下載新的Apple Worldwide Developer Relations Certification Authority證書壕翩,雙擊安裝蛉迹。
3.刪除相關(guān)的 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
這個是已經(jīng)上傳了同一個版本的APP了北救,不能再繼續(xù)上傳,如果需要重新上傳芜抒,就需要改版本號珍策。
問題四:
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里是生成了一個可執(zhí)行文件,從新做一個bundle文件,注意bundle項目Build Settings 中的Mach-o Type 要選擇 Static Library蹭劈。如果是第三方的就把bundle里info.plist的?Executable file字段刪除掉(我自己的bundle如果刪除疗绣,上傳的時候會提示bundle是損壞的),然后重新打包铺韧。
問題八:
ERROR ITMS-90034: Missing or invalid signature
這個其實還是因為bundle里有個可執(zhí)行文件多矮,在打包的時候沒能進行簽名導(dǎo)致的。
問題九:
ERROR ITMS-90096:"You binary is not optimized for iPhone 5....".
在工程里的Images.xcassets添加并設(shè)置LaunchImage對解決ERROR ITMS-90096根本不會起到任何作用哈打,需要單獨添加針對iPhone 5的載入圖片塔逃。關(guān)鍵點有三項:1、圖片的名稱必須叫Default-568.png前酿。2患雏、必須把圖片放在工程的根目錄下鹏溯。3罢维、圖片尺寸必須是320*568。
然后在plist中添加
問題十:
使用Application Loader 上傳ipa出現(xiàn)的錯誤提示“application loader上傳出錯 生成的API分析文件太大”解決方法:解決辦法就是修改Xcode里面的Build
問題十一:
在Archive項目 時丙挽,出現(xiàn)了“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(打開包內(nèi)容)紫新。
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里面刪除該屬性。
問題十三:
這個原因也有多種宰僧,一個出現(xiàn)比較多的原因就是材彪,你之前安裝的描述文件沒有包含推送證書。重新登錄到開發(fā)者中心,查看描述文件查刻。
你會發(fā)現(xiàn)Status變成的狀態(tài)是黃色的(正常是綠色)键兜,如下圖。
點擊Edit穗泵,然后選擇Cenerate就行了普气。最后把描述文件下載,安裝佃延。