美文网首页
Xcode8的那些坑

Xcode8的那些坑

作者: 再也不要见 | 来源:发表于2016-10-25 17:08 被阅读0次

    一、subsystem: com.apple.UIKit, category: HIDEventFiltered, enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 1, privacy_setting: 2, enable_private_data: 0

    解决:

    二、网络请求报错。

    升级Xcode 7.0发现网络访问失败。

    输出错误信息

    #warning: 获取app配置信息失败: The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.

    原因:iOS9引入了新特性App Transport Security (ATS)。

    详情:App Transport Security (ATS)

    新特性要求App内访问的网络必须使用HTTPS协议。

    但是现在公司的项目使用的是HTTP协议,使用私有加密方式保证数据安全。现在也不能马上改成HTTPS协议传输。

    最终找到以下解决办法:

    在Info.plist中添加NSAppTransportSecurity类型Dictionary。

    在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES

    三、Bitcode问题

    原因:Xcode7 及以上版本会默认开启 bitcode 。

    bitcode具体是什么就不解释了。

    解决方法:

    1.更新library使包含Bitcode,否则会出现以上的警告。

    2.关闭Bitcode,简单粗暴。

    Build Settings”->”Enable Bitcode”改成"NO"。

    四、项目运行报错如下

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

    : CGContextTranslateCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

    : CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

    出错原因:设置app的状态栏样式的使用使用了旧的方式,在info.plist里面设置了View controller-based status bar appearance为NO,默认为YES,一般式iOS6的时候使用这种方式,iOS7,8也兼容,但是到了iOS9就报了警告。

    五、可以参考

    Xcode8 及iOS10适配问题汇总 - ZachMan1993的博客 - 博客频道 - CSDN.NET

    相关文章

      网友评论

          本文标题:Xcode8的那些坑

          本文链接:https://www.haomeiwen.com/subject/kwoayttx.html