iOS 9升级后app可能的错误

在升级完Xcode7和iOS 9之后,不加修改直接先run一次app,console会打印两种错误:

<Error>: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)

第一个错误:根据爆栈网帖子显示,怀疑是一个iOS9下的bug,对app运行貌似没有明显的影响,但是在控制台会不断输出,所以理论上应该消除掉。修复的做法是在info.plist里将键值UIViewControllerBasedStatusBarAppearance删掉即可。

第二个错误:这个错误会直接导致app无法运行,因为请求失败无法获取数据。修复方法毋庸置疑,是需要把所有http请求修改为https的。根据Apple doc里说的,所有应用要尽快采用ATS安全机制来更新应用(You should adopt ATS as soon as possible, regardless of whether you’re creating a new app or updating an existing one.);但是如果请求的back end暂未使用TLS封装API,则可以在info.plist里做出标记,即增加键值对:

<key>NSAppTransportSecurity</key>

<dict><key>NSAllowsArbitraryLoads</key><true/></dict>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容