上架appstore移除模拟器第三方包

为了方便开发者调试,我们使用lipo工具合并了模拟器和真机的架构。所以在上传前AppStore前,必须使用lipo移除模拟器的架构,否则会报错:

ERROR ITMS-90087: "Unsupported Architectures. The executable for MyFirst.app/Frameworks/WoyunWebSdk.framework contains unsupported architectures '[x86_64, i386]'."

//静态库 路径下直接查看支持的版本

xumindeMacBook-Pro:YFCreditCardPaySDK xumin$ lipo -info libYFCreditCardPaySDK.a

Architectures in the fat file: libYFCreditCardPaySDK.a are: arm64 armv7

//动态库 路径下直接查看支持的版本  加上斜线 带上动态库名称

xumindeMacBook-Pro:BDFaceSDK xumin$ lipo -info IDLFaceSDK.framework/IDLFaceSDK

Architectures in the fat file: IDLFaceSDK.framework/IDLFaceSDK are: armv7 arm64

扫描二维码关注公众号,回复: 17273620 查看本文章

模拟器32位(即Mac处理器的指令集):i386

模拟器64位(即Mac处理器的指令集):x86_64

真机32位(即ARM处理器的指令集):armv7、armv7s

真机64位(即ARM处理器的指令集):arm64

移除操作:

LK-Macmini:Xcode linknetwork$ cd /Users/linknetwork/Desktop/PortOfTrade/ThirdDeploy/BaiduOCR/AipBase.framework
LK-Macmini:AipBase.framework linknetwork$ pwd
/Users/linknetwork/Desktop/PortOfTrade/ThirdDeploy/BaiduOCR/AipBase.framework
LK-Macmini:AipBase.framework linknetwork$ ls
AipBase     Headers     Info.plist  Modules
LK-Macmini:AipBase.framework linknetwork$ lipo -info AipBase 
Architectures in the fat file: AipBase are: i386 x86_64 armv7 arm64 
LK-Macmini:AipBase.framework linknetwork$ lipo -remove i386 AipBase -o AipBase
LK-Macmini:AipBase.framework linknetwork$ lipo -remove x86_64 AipBase -o AipBase
LK-Macmini:AipBase.framework linknetwork$ lipo -info AipBase
Architectures in the fat file: AipBase are: armv7 arm64 
LK-Macmini:AipBase.framework linknetwork$ cd /Users/linknetwork/Desktop/PortOfTrade/ThirdDeploy/BaiduOCR/AipOcrSdk.framework
LK-Macmini:AipOcrSdk.framework linknetwork$ lipo -remove x86_64 AipOcrSdk -o AipOcrSdk
LK-Macmini:AipOcrSdk.framework linknetwork$ lipo -remove i386 AipOcrSdk -o AipOcrSdk
LK-Macmini:AipOcrSdk.framework linknetwork$ lipo -info AipOcrSdk
Architectures in the fat file: AipOcrSdk are: armv7 arm64 

顺便补充下lipo命令:

我们使用lipo 命令来查看整合静态库

1.查看静态库支持的CPU架构

lipo -info libname.a(或者libname.framework/libname)

2. 合并静态库

# lipo -create 静态库存放路径1  静态库存放路径2 ...  -output 整合后存放的路径

lipo  -create  libname-armv7.a   libname-armv7s.a   libname-i386.a  -output  libname.a

framework 合并(例util.framework)

lipo -create  arm7/util.framework/util  i386/util.framework/util   -output   util.framework   

3. 静态库拆分

# lipo 静态库源文件路径 -thin CPU架构名称 -output 拆分后文件存放路径

# 架构名为armv7/armv7s/arm64等,与lipo -info 输出的架构名一致

lipo  libname.a  -thin  armv7  -output  libname-armv7.a



 

猜你喜欢

转载自blog.csdn.net/ios_xumin/article/details/118021202
今日推荐