iOS9问题备忘
2015-09-22 11:16
615 查看
iOS9.0升级后,相应的APP作如下修改
1:info.plist中增加:
NSAppTransportSecurity类型Dictionary
在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设置为YES
原因是iOS9引入了新特性App Transport Security(ATS),新特性要求APP内访问的网络必须使用HTTPS协议
为了兼容HTTP协议,需如上步骤进行配置;(偷的图)
![](http://img.blog.csdn.net/20150922113241004?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
2:设置域。可以简单理解成,把不支持https协议的接口设置成http的接口
在Info.plist中添加一个Key: NSAppTransportSecurity,类型为Dictionary
在NSAppTransportSecurity下,添加一个:NSExceptionDomains属性,类型为字典类型;
把需要支持的域添加给NSExceptionDomains。其中域作为Key,类型为Dictionary
在每个域下面需设置三个属性:NSIncludesSubdomains、NSExceptionRequiresForwardSecrecy、NSExceptionAllowsInsecureHTTPLoads 类型均为Boolean,值分别为YES、NO、YES
细节提示:
在iOS9中如果使用到网络图片,也要注意网络图片时否是HTTP的,如果是也需要把图片的域设置
以下为各平台域:
新浪微博:weibo.com weibo.cn sina.com.cn
腾讯微博:qq.com
微信:qq.com
QQ/QZone:qq.com
3: 设置白名单URL scheme
在iOS9中,在iOS 9下涉及到平台客户端跳转,系统会自动到项目info.plist下检测是否设置平台Scheme。对于需要配置的平台,如果没有配置,就无法正常跳转平台客户端。因此要支持客户端的分享和授权等,需要配置Scheme名单;
如下内容:
LSApplicationQueriesSchemes类型NSArray
然后给添加一个需要支持的项目,类型为字符串类型
各平台OpenURL白名单说明:
新浪微博:sinaweibo,sinaweibohd,sinaweibosso,sinaweibohdsso,weibosdk,
weibosdk2.5 (后两个若导入新浪SDK则需要)
腾讯微博:TencentWeibo,tencentweiboSdkv2
微信:wechat,weixin
支付宝:alipay,alipayshare
QQ:mqqOpensdkSSoLogin,mqqopensdkapiV2,mqqopensdkapiV3,wtloginmqq2,mqq
mqqapi
QZONE:mqzoneopensdk,mqzoneopensdkapi,mqzoneopensdkapi19,mqzoneopensdkapiV2,mqqOpensdkSSoLogin,mqqopensdkapiV2,mqqopensdkapiV3,wtloginmqq2,mqqapi,mqqwpa,mqzone,
mqq (若同时使用QQ及QZONE,则直接添加QZONE的即可)
4:涉及到NSKeyedUnarchiver的操作,需要判断下内容是否为nil,如果为nil则不要进行NSKeyedUnarchiver的相关操作
5:Bitcode
未来Watch应用须包含Bi 听从的,iOS不强制,但Xcode7默认会开启Bitcode;
须在Build Setttings中关闭Bitcode
6:在iOS9下,新浪微博SDK里面使用的JSONKit在部分机型可能导致崩溃。崩溃信息如下图。
解决:暂时移除新浪微博SDK,等待新浪微博SDK的更新。
影响:移除新浪微博SDK后,除了依赖SDK实现的跳到客户端的分享和关注官网微博等失效。其他主要功能如分享、SSO、获取用户资料等不受影响。
1:info.plist中增加:
NSAppTransportSecurity类型Dictionary
在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设置为YES
原因是iOS9引入了新特性App Transport Security(ATS),新特性要求APP内访问的网络必须使用HTTPS协议
为了兼容HTTP协议,需如上步骤进行配置;(偷的图)
2:设置域。可以简单理解成,把不支持https协议的接口设置成http的接口
在Info.plist中添加一个Key: NSAppTransportSecurity,类型为Dictionary
在NSAppTransportSecurity下,添加一个:NSExceptionDomains属性,类型为字典类型;
把需要支持的域添加给NSExceptionDomains。其中域作为Key,类型为Dictionary
在每个域下面需设置三个属性:NSIncludesSubdomains、NSExceptionRequiresForwardSecrecy、NSExceptionAllowsInsecureHTTPLoads 类型均为Boolean,值分别为YES、NO、YES
细节提示:
在iOS9中如果使用到网络图片,也要注意网络图片时否是HTTP的,如果是也需要把图片的域设置
以下为各平台域:
新浪微博:weibo.com weibo.cn sina.com.cn
腾讯微博:qq.com
微信:qq.com
QQ/QZone:qq.com
3: 设置白名单URL scheme
在iOS9中,在iOS 9下涉及到平台客户端跳转,系统会自动到项目info.plist下检测是否设置平台Scheme。对于需要配置的平台,如果没有配置,就无法正常跳转平台客户端。因此要支持客户端的分享和授权等,需要配置Scheme名单;
如下内容:
LSApplicationQueriesSchemes类型NSArray
然后给添加一个需要支持的项目,类型为字符串类型
各平台OpenURL白名单说明:
新浪微博:sinaweibo,sinaweibohd,sinaweibosso,sinaweibohdsso,weibosdk,
weibosdk2.5 (后两个若导入新浪SDK则需要)
腾讯微博:TencentWeibo,tencentweiboSdkv2
微信:wechat,weixin
支付宝:alipay,alipayshare
QQ:mqqOpensdkSSoLogin,mqqopensdkapiV2,mqqopensdkapiV3,wtloginmqq2,mqq
mqqapi
QZONE:mqzoneopensdk,mqzoneopensdkapi,mqzoneopensdkapi19,mqzoneopensdkapiV2,mqqOpensdkSSoLogin,mqqopensdkapiV2,mqqopensdkapiV3,wtloginmqq2,mqqapi,mqqwpa,mqzone,
mqq (若同时使用QQ及QZONE,则直接添加QZONE的即可)
4:涉及到NSKeyedUnarchiver的操作,需要判断下内容是否为nil,如果为nil则不要进行NSKeyedUnarchiver的相关操作
5:Bitcode
未来Watch应用须包含Bi 听从的,iOS不强制,但Xcode7默认会开启Bitcode;
须在Build Setttings中关闭Bitcode
6:在iOS9下,新浪微博SDK里面使用的JSONKit在部分机型可能导致崩溃。崩溃信息如下图。
解决:暂时移除新浪微博SDK,等待新浪微博SDK的更新。
影响:移除新浪微博SDK后,除了依赖SDK实现的跳到客户端的分享和关注官网微博等失效。其他主要功能如分享、SSO、获取用户资料等不受影响。
7:XCode 7上传遇到ERROR ITMS-90535 Unexpected CFBundleExecutable Key. 的解决办法
点击打开链接
相关文章推荐
- iOS 9中使用手Q支付SDK须知
- position:sticky实现iOS6+下的粘性布局
- iOS9的一些问题
- iOS开发动画之绕View旋转的View
- iOS-xcode7 新特性相关
- iOS开发之1分钟集成超炫的个人界面
- ios开发之通知事件
- IOS 百度地图在IOS9上显示不出来的解决办法
- iOS 清除缓存
- 【Node.app】Node.js for iOS
- ios开发---视图切换-storyboard创建
- IOS第四天-新浪微博 -存储优化OAuth授权账号信息,下拉刷新,字典转模型
- iOS工程如何支持64-bit
- iOS 控制单个控制器旋转
- iOS 9的新的改变 iOS SDK Release Notes for iOS 9 说了些改变
- iOS 9的新的改变 iOS SDK Release Notes for iOS 9 说了些改变
- iOS中Size Classes的理解与使用
- ios9怎么设置6位密码 ios9设置6位密码图文教程
- iOS模拟器多个虚拟机怎么处理
- 完美主义:实现iOS输入框自动移动