升级iOS9系统后,需要更新的相关配置

升级iOS9系统后,在xcode 7上运行时,会出现以下问题,进行调整即可

(1)bitcode
使用Xcode7编译提示:XXX does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture arm64
bitcode是被编译程序的一种中间形式的代码。包含bitcode配置的程序将会在App store上被编译和链接。bitcode允许苹果在后期重新优化我们程序的二进制文件,而不需要我们重新提交一个新的版本到App store上。
Xcode7 默认开启了bitcode,如果App使用的第三方类库不支持bitcode会提示错误,只需要在”Build Settings”->”Enable Bitcode”选项中看关闭bitcode即可。
开启Bitcode编译后,编译产生的文件体积会变大 (因为是中间代码,不是用户下载的包),且dSYM文件不能用来崩溃日志的符号化 (用户下载的包是Apple服务重新编译产生的,有产生新的符号文件)。通过Archive方式上传AppStore的包,可以在 Xcode的Organizer工具中下载对应安装包的新的符号文件。

(2)iOS 9使用URL scheme必须将其加入白名单
否则会提示类似如下错误:
canOpenURL: failed for URL: “mqqopensdkapiV2://qqapp” - error: “This app is not allowed to query for scheme mqqopensdkapiV2”
修正方法是,Info.plist文件中添加一个key为LSApplicationQueriesSchemes的数组值,里面包含需要添加白名单的string类型的scheme。在项目中使用了qq,微信等分享登录功能,需要添加的值为:
mqqopensdkapiV2
mqqOpensdkSSoLogin
mqq
mqzoneopensdkapiV2
mqzoneopensdkapi19
mqzoneopensdkapi
mqzoneopensdk
mqzone
weixin
wechat
更多其他适配点后续不断跟进。
可以在以下链接中查看
http://dev.umeng.com/social/ios/ios9

(3)默认使用HTTPS请求
如果在Xcode 9之前使用的时http请求,那么在XCode 9上编译的App是不能联网的,会提示如下错误:
App Transport Security has blocked a cleartext HTTP resource load since it is insecure. Temporary exceptions can be configured via your app’s Info.plist file.
修改方法是要么使服务器支持https访问,要么关闭https的使用。第一种方法对于个人开发者来说代价还是比较大的,因此推荐使用后面一种方法,具体的做法是:在工程的Info.plist文件里添加NSAppTransportSecurity字典类型的,添加一个元素:key为NSAllowsArbitraryLoads,值为YES。

参考链接:
http://dev.umeng.com/social/ios/ios9

参考文档:
https://github.com/ChenYilong/iOS9AdaptationTips
http://blog.csdn.net/sch1111878/article/details/48547979

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值