今天打包发布遇到这个问题,
修改了bitcode还是不行,报错就是各种第三方框架类似MBProgressHUD.framework is not consistent with the Mach-O in the main bundle. the main dundle Mach-O contains armv7(machine code)and arm64(machine code)....的情况。
5月底打包时候没有过这样的问题。没错的话这应该是6月苹果更改审核要求后才出现的。
导致这样的问题出现时因为CocoPods导入的框架bitCode不一致导致的。
解决方案
在Podfile文件内容后面加上如下代码:
post_install
do |installer|
installer.pods_project.targets.each
do |target|
target.build_configurations.each
do |config|
config.build_settings['ENABLE_BITCODE'] = 'NO'
end
end
end
再重新打包上传就OK啦
-------------补充纪录-------------
关于 pod update 时候出现的错误:
[!] Invalid `Podfile` file: syntax error, unexpected tCONSTANT, expecting end-of-input
...ig.build_settings['OTHER_CFLAGS'] || ['$(inherited)']
... ^. Updating CocoaPods might fix the issue.
参考 http://www.cnblogs.com/lizzie8023/p/5558504.html 得到以下解决方法:
先删除之前Podfile里面加的post_install do |installer|...... ,然后pod update, 在update之前记得给第三方框架指定一个版本(某些框架最新的可能在你项目无法使用,出现bug),升级后再次执行上面的步骤
-------------补充纪录-------------
对于iOS,bitcode是可选的;对于watchOS,bitcode是必须的;而Mac OS是不支持bitcode。
由此可在打包是去掉默认的勾选“include bitcode”项