zoukankan      html  css  js  c++  java
  • iOS 适配iOS9

    1、网络接口不支持https协议,在iOS9下

     在iOS9下,系统默认会拦截对http协议接口的访问,因此无法获取http协议接口的数据。

     解决方案(以下方法2选1):

    (1)暂时退回到http协议

    具体方法:

    在项目的info.plist中添加一个Key:NSAppTransportSecurity,类型为字典类型。

    然后给它添加一个Key:NSAllowsArbitraryLoads,类型为Boolean类型,值为YES;

    2016.01.06更新:

    随着SDK版本的更新,这里需要以下更新。

    具体方法:

    在项目的info.plist中添加一个Key:App Transport Security Settings,类型为字典类型。

    然后给它添加一个Key:Allow Arbitrary Loads,类型为Boolean类型,值为YES;

    如图:

     (2)设置域。

    可以简单理解成,把不支持https协议的接口设置成http的接口。

    具体方法:

    1)、在项目的info.plist中添加一个Key:NSAppTransportSecurity,类型为字典类型。

    2)、然后给它添加一个NSExceptionDomains,类型为字典类型;

    3)、把需要的支持的域添加給NSExceptionDomains。其中域作为Key,类型为字典类型。

    4)、每个域下面需要设置3个属性:NSIncludesSubdomains、NSExceptionRequiresForwardSecrecy、NSExceptionAllowsInsecureHTTPLoads。

    均为Boolean类型,值分别为YES、NO、YES。

    2、大部分社交平台SDK不支持bitcode。

    问题描述:iOS 9新建项目默认需要支持bitcode,而不支持bitcode的SDK会导致无法编译运行。

    解决方案:

    (1)暂时关闭对bitcode的支持(建议),方法如下图

    (2)移除不支持bitcode的平台SDK。

    3、添加Scheme白名单。

    问题描述:在iOS 9下涉及到平台客户端跳转,系统会自动到项目info.plist下检测是否设置平台Scheme。对于需要配置的平台,如果没有配置,就无法正常跳转平台客户端。因此要支持客户端的分享和授权等,需要配置Scheme名单。

    具体方法:

    1)在项目的info.plist中添加一LSApplicationQueriesSchemes,类型为Array。

    2)然后给它添加一个需要支持的项目,类型为字符串类型;

    参考链接:http://wiki.mob.com/ios9-对sharesdk的影响(适配ios-9必读)/

      

  • 相关阅读:
    无线网络安全标准是什么?漏洞是怎样产生的
    揭秘英特尔处理器如何启动?
    数据包级网络遥测和网络安全推送分析
    自动化与网络工程之间的关系
    ElementUI中的el-table中实现动态添加一行、删除一行、清空所有行
    ElementUI中的el-table实现多选框不勾选的提示
    Nodejs中的fs模块的使用
    ElementUI中的el-table怎样实现多选与单选
    MyBatis中针对if-test的参数为指定值的xml写法
    SqlServer中怎样从Excel中导入数据
  • 原文地址:https://www.cnblogs.com/zhangyubao/p/6994973.html
Copyright © 2011-2022 走看看