适配iOS9系统

作者: 75afc06dcc73 | 来源:发表于2016-07-09 22:20 被阅读146次

    本文来源Mob.com

    在iOS9下,系统默认会拦截对http协议接口的访问,因此无法获取http协议接口的数据。还可能造成我们的编辑界面里传http之类的网络图片的时候,我们的编辑界面不会显示图片截图,解决的办法或者全面关闭https,允许使用http请求;或者把图片的域添加;又或者选择使用https的图片。#


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

    1. 暂时退回到http协议。
    具体方法:
    在项目的info.plist中添加一个Key:NSAppTransportSecurity,类型为字典类型。
    然后给它添加一个Key:NSAllowsArbitraryLoads,类型为Boolean类型,值为YES;
    
    751FEFB8-86A2-45EC-8F61-A1A5081C5465.png
    2. 设置域。可以简单理解成,把不支持https协议的接口设置成http的接口。
    具体方法:
    1)、在项目的info.plist中添加一个Key:NSAppTransportSecurity,类型为字典类型。
    
    2)、然后给它添加一个NSExceptionDomains,类型为字典类型;
    
    3)、把需要的支持的域添加給NSExceptionDomains。其中域作为 Key,类型为字典类型。
    
    4)、每个域下面需要设置3个属性:NSIncludesSubdomains、NSExceptionRequiresForwardSecrecy、NSExceptionAllowsInsecureHTTPLoads。
    
    均为Boolean类型,值分别为YES、NO、YES。
    
    B4CB0038-520E-4E1A-BDD1-C5AB8627F770.png

    细节提示:在iOS9中如果使用到网络图片,也要注意网络图片是否是HTTP的哦,如果是,也要把图片的域设置哦!

    各平台设置域 各平台设置域
    新浪微博
    weibo.com
    weibo.cn
    sina.com.cn
    腾讯微博/微信/QQ/QZone
    qq.com
    人人
    renren.com
    开心网
    kaixin001.com/kaixin001.com.cn
    有道
    youdao.com
    Facebook
    facebook.com
    fbcdn.net
    akamaihd.net
    Twitter
    twitter.com
    Instagram
    instagram.com
    instagramstatic-a.akamaihd.net
    Tumblr
    tumblr.com
    Instapaper
    instapaper.com
    Kakao
    kakao.com
    以下app为无须配置名单 以下app为无须配置名单
    易信
    豆瓣
    Google+
    Pinterest
    明道
    Evernote印象笔记
    VK
    pocket
    LinkedIn
    Dropbox
    Flickr .

    小部分社交平台SDK不支持bitcode。

    问题描述:iOS 9新建项目默认需要支持bitcode,而不支持bitcode的SDK会导致无法编译运行。
    支持bitcode :
    1、微信SDK
    2、QQ SDK
    3、新浪微博SDK
    4、支付宝SDK
    5、Kakao SDK
    6、Facebook Messenger
    不支持bitcode:
    1、易信 SDK
    2、人人 SDK
    不支持 bitcode 的 SDK 解决方案:
    (1)、暂时关闭对bitcode的支持(建议),方法如下图
    (2)、移除不支持bitcode的平台SDK。
    
    3148F4FF-C428-4DF7-81DE-01BCCF44FF63.png

    添加Scheme白名单#

    问题描述:在iOS 9下涉及到平台客户端跳转,系统会自动到项目info.plist下检测是否设置平台Scheme。对于需要配置的平台,如果没有配置,就无法正常跳转平台客户端。因此要支持客户端的分享和授权等,需要配置Scheme名单。
    具体方法:
    1)、在项目的info.plist中添加一LSApplicationQueriesSchemes,类型为Array。
    2)、然后给它添加一个需要支持的项目,类型为字符串类型;
    
    FBEF076A-611A-4B43-B8A9-F1825CC08FDA.png
    各平台OpenURL白名单说明 各平台OpenURL白名单说明
    新浪微博
    sinaweibo
    sinaweibohd
    sinaweibosso
    sinaweibohdsso
    weibosdk
    weibosdk2.5
    [后两个若导入新浪SDK则需要]
    腾讯微博
    TencentWeibo
    tencentweiboSdkv2
    [控制台会提示这两个,但是腾讯微博SDK已经弃用,可以忽略不配置]
    微信
    wechat
    weixin
    易信
    yixin
    yixinopenapi
    支付宝
    alipay
    alipayshare
    QQ
    mqqOpensdkSSoLogin
    mqqopensdkapiV2
    mqqopensdkapiV3
    wtloginmqq2
    mqq
    mqqapi
    QZONE
    mqzoneopensdk
    mqzoneopensdkapi
    mqzoneopensdkapi19
    mqzoneopensdkapiV2
    mqqOpensdkSSoLogin
    mqqopensdkapiV2
    mqqopensdkapiV3
    wtloginmqq2
    mqqapi
    mqqwpa
    mqzone
    mqq
    [注:若同时使用QQ和QZONE,则直接添加本格即可]
    Google+
    googlechrome
    googlechrome-x-callback
    hasgplus4
    com.google.gppconsent
    com.google.gppconsent.2.2.0
    com.google.gppconsent.2.3.0
    com.google.gppconsent.2.4.0
    com.google.gppconsent.2.4.1
    人人网
    renrenapi
    renrenios
    renreniphone
    renren
    Facebook
    fbauth2
    Pocket
    pocket-oauth-v1
    Pinterest
    pinit
    Instagram
    instagram
    WhatsApp
    whatsapp
    Line
    line
    KakaoTalk
    kakaolink
    KaokaoStory
    storylink
    以下app为无须配置名单 以下app为无须配置名单
    豆瓣
    开心网
    Twitter
    LinkedIn
    Tumblr
    非平台类,如短信,复制,邮件等 .

    必看注意:

    1.在iOS9中,如果没有添加上述白名单,系统会打印类似如下提示:

    -canOpenURL: failed for URL: “sinaweibohdsso://xxx” – error: “This app is not allowed to query for scheme sinaweibohdsso”(如下图)
    如没有添加相关白名单,有可能导致不会跳转微信,不会跳转QQ等。
    

    2.添加完上述所需的名单,系统依然会打印类似信息:

    -canOpenURL: failed for URL: “sinaweibohdsso://xxx” – error: “null”
    这是系统打印的信息,目前是无法阻止其打印,即无法消除的
    

    如果没有设置白名单的话,系统的打印信息如图所示:

    屏幕快照-2015-09-17-下午7.03.30.png

    添加完后,系统是依然会打印的,不过error会变成null:

    屏幕快照-2015-09-17-下午7.03.36.png

    如果各位开发者朋友发现上表格有所遗漏,请根据系统信息添加相关白名单即可。也请顺便通知本人,本人会进行添加更新

    相关文章

      网友评论

        本文标题:适配iOS9系统

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