前陣子項目中集成了百度Aip SDK, 真機測試沒問題, 打包上傳時卻悲劇了, 一片紅紅火火.?
使用網(wǎng)上流傳的shell腳本, 去除不支持的architectures, ?結(jié)果發(fā)現(xiàn)并沒有什么用.
折騰了好一陣子, 最后決定自己手動剝離.
1 ) 找到工程中的AipBase.framework ,右鍵showInFinder
2 ) 打開終端, 輸入cd 然后把framework拖到終端.
3 )? 查看framework支持的架構(gòu).?
終端 lipo -info ../AipBase.framework/AipBase,?
顯示Architectures in the fat file: ../AipBase.framework/AipBase are: i386 x86_64 armv7 armv7s arm64 , 里面有我們不需要兩種架構(gòu) i386 x86_64
4 ) 手動剝離我們的需要的架構(gòu)
新建臨時文件夾
mkdir armv7
mkdir armv7s
mkdir arm64
lipo ../AipBase.framework/AipBase -thin armv7 -output ./armv7/AipBase
lipo ../AipBase.framework/AipBase -thin armv7s -output ./armv7s/AipBase
lipo ../AipBase.framework/AipBase -thin arm64 -output ./arm64/AipBase
5 ) 將上面生成的三個庫合成一個, 并替換原來的那個庫
lipo -create ../armv7/AipBase ../armv7s/AipBase ../arm64/AipBase -output ../AipBase.framework/AipBase
6 ) 清理臨時文件夾
rm -rf ../armv7
rm -rf ../armv7s
rm -rf ../arm64
6 ) 檢驗生成的framework架構(gòu)是否符合你的要求
lipo -info ../AipBase.framework/AipBase
顯示 Architectures in the fat file: ../AipBase.framework/AipBase are: armv7 armv7s arm64
7 ) Bug fixed! 打包, 上傳, 回家.