Xcode11打包導出不成功 IPA processing failed(續(xù))

咱接著來說IPA processing failed 打包失敗的問題哈哈哈
如果不知道看上個文章http://m.itdecent.cn/p/27d780350211
看見這個大佬的文章又寫的 作者:進階的coder 來源:掘金
再先說下Xcode11新特性
深色模式
如果沒有任何配置的話,升級后,APP的很多配置會隨著深色淺色模式的修改而改動。但是對于我司來說,目前還沒有任何資源去適配深色模式。解決方案蘋果已經(jīng)提供。本質上來說是在代碼層面屏蔽深色模式。

image.png

我這直接就給隱藏了
還有解決方案:
在plist文件里新增屬性User Interface Style 數(shù)據(jù)格式為string。值設置為Light。
拓展:
1.當然如果你要求強制適配深色模式就把值改為Dark。如果需要根據(jù)用戶的設置而改變,那就別設置這個屬性直接刪掉就好了。
2.當上面的屬性設置為Light或者Dark后,你的狀態(tài)欄文字顏色就會隨著你的
Status bar style屬性的改變而改變。這個屬性可以在Plist文件里設置,也可以在General里設置如下:
image.png

3.這里需要注意:
plist文件的里這個屬性(View controller-based status bar appearance)一定要設置會NO。如果不設置或者設置會YES。都會導致User Interface Style與Status bar style這個兩個配置失效。
上邊解決的作者:進階的coder

繼續(xù)說IPA processing failed
不只是前幾天 現(xiàn)在也是一臉懵逼的點開show logs 如下


image.png

點開后就是 上個文章的那個文本里一堆。。
我是企業(yè)打包 上傳AppStore我嘗試好像沒問題。其他的打包方式都會報這個錯。
目前網(wǎng)上找到的解決方案跟解釋都沒能解決我這個問題。
1.有人說是如果APP不支持ipad,就不要勾選ipad。
2.有人說是部分第三方庫導致的,更新一下就好了。(我覺得不是 就算是的話還一個一個的去弄么 一個大項目里邊兒會又很多吧)
解決方案
熟悉編譯與系統(tǒng)原理的朋友,面對這個問題應該很好解決,不走xcode的打包就好了?,F(xiàn)在把步驟解釋如下:
1.先把項目的環(huán)境配置好,例如你要打developer包,就先在項目里把相應的描述文件跟證書配置好,然后command +B(編譯)。編譯完成后,找到項目文件夾里的.app文件。
2.選中該文件,show in finder。然后壓縮。壓縮完成后把壓縮包后綴改為ipa。
這樣就完成了,該分發(fā)分發(fā),該重簽名重簽名。

這個方法比較麻煩并且會出現(xiàn)最后安裝報錯的情況APIinternalError...
之后在[@Leoeoo] 大神的告訴下說是
iOS13蘋果取消了32位系統(tǒng)的支持,SDK包含i386 x86_64架構
所以我就根據(jù)大神的提示看了下IDEDistribution.standard.log
就找到了


image.png

由于大神那時還沒回復我用:lipo -remove x86_64 NIMSDK -o NIMSDK 刪掉
所以我就在自己搜尋了下剔除掉x86_64, i386這兩個架構SDK
網(wǎng)上看的一種不保險的的方法是在程序里加一個腳本,剔除禁止的架構 好像也是可以的(是可以,但是真機下就不行了 會報錯 下面會說 )()
主要操作流程如下
解決辦法:TARGETS->Build Phases->點擊加號選擇New Run Script Phase->然后復制粘貼下面代碼


image.png
# Type a script or drag a script file from your workspace to insert its path.
APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"                                           

# This script loops through the frameworks embedded in the application and

# removes unused architectures.

find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK

do

FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)

FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"

echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"

EXTRACTED_ARCHS=()

for ARCH in $ARCHS

do

echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"

lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"

EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")

done

echo "Merging extracted architectures: ${ARCHS}"

lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"

rm "${EXTRACTED_ARCHS[@]}"

echo "Replacing original executable with thinned version"

rm "$FRAMEWORK_EXECUTABLE_PATH"

mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"

done

結束打包 完美解決~~~ (此事件應該畫上句號了)但是
沒想到 真機跑的時候我又出現(xiàn)了(不知道你們?。?/p>

image.png

所以先找找看吧 就找到了new build system(我記得我以前弄過)
Xcode菜單欄選擇File-- Workspace Setting,把new build system(Defalt)切換到 Legacy Build System 在模擬器上運行就OK!


image.png

以為OK了 又出現(xiàn)了


image.png

image.png

一些錯誤就迷茫了~ 如果有大佬知道怎么繼續(xù)解決告訴我下??
后來想反正都是刪這個東西
看來還是得用大神的方法 那咱就繼續(xù)操作 http://m.itdecent.cn/p/0145916f2139
一個一個刪吧
還是得需要記錄下的~

image.png

先找到那個log 所用的API是那個 我的是這個

各種架構解釋:
模擬器32位處理器測試需要i386架構,(iphone5,iphone5s以下的模擬器)
模擬器64位處理器測試需要x86_64架構,(iphone6以上的模擬器)
真機32位處理器需要armv7,或者armv7s架構,(iphone4真機/armv7, ipnone5,iphone5s真機/armv7s)
真機64位處理器需要arm64架構。(iphone6,iphone6p以上的真機)
解決辦法
刪除SDK中的i386,x86_86架構
我當前使用到了NIMSDK.framework這個SDK,假設NIMSDK.framework存放的目錄是:
/Users/leo/Desktop/testDir/NIMSDK.framework
1.使用終端進入到SDK內部
cd /Users/leo/Desktop/testDir/NIMSDK.framework
2.查看當前支持的架構
lipo -info NIMSDK
可以看到NIMSDK當前支持的架構:
Architectures in the fat file: NIMSDK are: i386 x86_64 armv7 arm64
3.刪掉i386,x86_86
lipo -remove i386 NIMSDK -o NIMSDK
lipo -remove x86_64 NIMSDK -o NIMSDK

弄好了弄了一次之后打包還是不行 我就又看啊~
原來還是這個 是另個API 周而復始 我刪了4個
抱著滿懷期望打包成功了 成功了不行啊 我就看了下真機可以不 也OK (反正我司暫時不需要模擬器)
可算
畫上句號了~~~?。。。。。。。。。。?!
有幫到你的話先點個贊吧哈哈~

還有個Xcode11:隱蔽的點點點 我這個我給去掉了是10的時候就去了?


image.png

要隱藏這些點點點,看下圖:只需要不勾選這個選項就好了。


image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容