如何为非Pod安装的iOS静态库WowzaGoCoderSDK开启Bitcode并解决ITMS-90635
解决ERROR ITMS-90635:为静态库WowzaGoCoderSDK开启Bitcode的方案
嘿,我之前踩过一模一样的坑,这个错误核心就是主App和嵌套静态库的Bitcode配置、架构不匹配导致的。既然WowzaGoCoderSDK是手动引入的静态库,不是Pods管理的,那咱们可以按下面的步骤一步步解决:
第一步:先确认静态库本身是否支持Bitcode
有些老版本的静态库可能没包含Bitcode段,这时候得先验证:
- 打开终端,cd到你项目里WowzaGoCoderSDK.framework所在的文件夹,运行命令:
otool -l WowzaGoCoderSDK | grep __bitcode - 如果终端输出了包含
__bitcode的内容,说明这个库本身是支持Bitcode的;如果没有任何输出,那你得先联系Wowza官方获取带Bitcode支持的iOS版本SDK,或者退而求其次关闭主App的Bitcode(不过苹果现在更推荐保留Bitcode,优先前者)。
第二步:统一项目和库的Bitcode配置(库支持Bitcode的前提下)
1. 同步主App的Bitcode设置
- 打开Xcode项目,选中主App的Target,切换到
Build Settings标签页 - 搜索
Enable Bitcode,把它设置为Yes(和报错里主bundle的配置保持一致) - 别忘了检查Project级别的
Enable Bitcode设置,也要设为Yes,确保所有子Target都继承这个配置
2. 若有库的源码,重新编译带Bitcode的静态库
如果你手里有WowzaGoCoderSDK的源码,那可以自己重新编译适配:
- 打开库的Xcode项目,同样在
Build Settings里把Enable Bitcode设为Yes - 编译生成支持
armv7和arm64架构(和主App一致)的静态库,替换掉你当前项目里的旧库
3. 验证库的架构匹配性
即使库支持Bitcode,也要确保它的架构和主App一致:
- 在终端运行命令查看库的架构:
lipo -info WowzaGoCoderSDK.framework/WowzaGoCoderSDK - 输出里必须包含
armv7和arm64,如果有多余的x86_64(模拟器架构),可以用lipo命令移除:lipo -remove x86_64 WowzaGoCoderSDK.framework/WowzaGoCoderSDK -output WowzaGoCoderSDK.framework/WowzaGoCoderSDK
最后:提前验证避免重复踩坑
在上传到App Store之前,先在Xcode里执行Product > Archive打包,然后用Validate App功能检查一遍,这样能提前发现配置问题,不用等上传后才报错。
内容的提问来源于stack exchange,提问作者devang bhatt
相关产品推荐
相关产品推荐

