比较长的篇章末尾有小结,可以直接看结论。
ATS
,全称为App Transport Security
,是iOS9的一个新特性。All connections using the NSURLConnection, CFURL, or NSURLSession APIs use App Transport Security default behavior in apps built for iOS 9.0 or later, and OS X v10.11 or later. Connections that do not follow the requirements will fail. For more information on various the connection methods, see NSURLConnection Class Reference, CFURL Reference, or NSURLSession Class Reference.
These are the App Transport Security requirements:
The server must support at least Transport Layer Security (TLS) protocol version 1.2.
Connection ciphers are limited to those that provide forward secrecy (see the list of ciphers below.)
Certificates must be signed using a SHA256 or greater signature hash algorithm, with either a 2048-bit or greater RSA key or a 256-bit or greater Elliptic-Curve (ECC) key.
Invalid certificates result in a hard failure and no connection.
These are the accepted ciphers:
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
Certificates must be signed using a SHA256 or better signature hash algorithm, with either a 2048 bit or greater RSA key or a 256 bit or greater Elliptic-Curve (ECC) key. Invalid certificates result in a hard failure and no connection
目前可以不做任何改动
。有2处变化
iOS9以后,企业级分发ipa包将遭到与Mac上dmg安装包一样的待遇:默认不能安装,也不再出现“信任按钮”
iOS9以后,企业分发时可能存在:下载的ipa包与网页两者的 bundle ID 无法匹配而导致下载失败的情况
以上变化针对所有$299证书打包的应用
在 设置-通用-描述文件 页面中,点击并相信相应的企业证书描述文件
在 iOS9 之前,你可以使用 canOpenURL: 监测用户手机里到底装没装微信,装没装微博。但是也有一些别有用心的 App ,这些 App 有一张常用 App 的 URL scheme,然后他们会多次调用canOpenURL: 遍历该表,来监测用户手机都装了什么 App ,比如这个用户装了叫“大姨妈”的App,你就可以知道这个用户是女性,你就可以只推给这个用户女性用品的广告。这是侵犯用户隐私的行为。
"So for apps that are linked before iOS 9 and are running on iOS 9, they will be given 50 distinct URL schemes." -- WWDC 2015 session 703 Privacy and Your App
如果您的应用有调用uexWidget.loadApp、uexWidget.isAppInstalled或者使用了有打开第三方APP功能的插件(比如微信、支付宝
、QQ分享等)必须要配置URLScheme白名单
字体间隙变大了!
所以很多原本写死了width的label可能会出现“...”的情况
检查所有指定了宽度且包含文字的div
,是否出现此状况此篇章内提到的bugs,在原生开发中也有出现,目前尚无很好解决办法,只能等待苹果官方修复
< iframe id="openQQ" height="0" src="mqq://"> </iframe>
* 当应用处于空闲状态时(无网络请求)锁屏对于用户而言并无较大影响,
* 但是当应用在执行某个异步任务时(比如下拉刷新一下列表)锁屏,重新解锁进入就可能会发现异步任务失败,控制台也会提示 Error 信息。
* 以上情况不易复现,但确有发生。
Ignore manifest download, already have bundleID: com.mycom.MyApp
大部分iOS9 都可以安装,但有的就是不行* 这并非 iOS9的问题,iOS8及以前的系统也会出现
* 大部分手机尝试关机重启手机后恢复正常,但也有一直不能安装的例子...目前还找不到办法
widget
节点内添加如下字段<config desc="bgConfig" type="AUTHORITY">
<permission platform="iOS" info="urlSchemeWhiteList">
<string>scheme1</string>
<string>schene2</string>
</permission>
</config>
<string>scheme1</string>
代表一个URLSchemescheme1
加入到APP的白名单中,行数可任选,但必须小于50<config desc="bgConfig" type="AUTHORITY">
<permission platform="iOS" info="urlSchemeWhiteList">
<!--如果您有用到uexWeiXin请添加如下urlSchemes至白名单中,本行不要复制-->
<string>wechat</string>
<string>weixin</string>
<!--如果您有用到uexSina请添加如下urlSchemes至白名单中,本行不要复制-->
<String>Sinaweibohd</String>
<String>Sinaweibo</String>
<String>Sinaweibosso</String>
<String>Weibosdk</String>
<String>Weibosdk2.5</String>
<!-- 如果您有用到uexQQ请添加如下urlSchemes至白名单中,本行不要复制-->
<String>Mqqapi</String>
<String>Mqq</String>
<String>Mqqopensdkssologin</String>
<String>Mqqconnect</String>
<String>Mqqopensdkdataline</String>
<String>Mqqopensdkgrouptribeshare</String>
<String>Mqqopensdkfriend</String>
<String>Mqqopensdkapi</String>
<String>Mqqopensdkapiv2</String>
<String>Mqqopensdkapiv3</String>
<String>Mqzoneopensdk</String>
<String>Wtloginmqq</String>
<String>Wtloginmqq2</String>
<String>Mqqwpa</String>
<String>Mqzone</String>
<String>Mqzonev2</String>
<String>Mqzoneshare</String>
<String>Wtloginqzone</String>
<String>Mqzonewx</String>
<String>Mqzoneopensdkapiv2</String>
<String>Mqzoneopensdkapi19</String>
<String>Mqzoneopensdkapi</String>
<String>Mqzoneopensdk</String>
<!--如果您有用到uexAliPay请添加如下urlSchemes至白名单中,本行不要复制-->
<String>Alipay</String>
<String>Alipayshare</String>
</permission>
</config>
last_update:0929
平台名称 | URL Schem | 补充说明 |
---|---|---|
微信 | wechat, weixin | |
支付宝 | alipay,alipayshare | |
mqqOpensdkSSoLogin, mqqopensdkapiV2,mqqopensdkapiV3,wtloginmqq2,mqq,mqqapi | ||
QZONE | mqzoneopensdk, mqzoneopensdkapi,mqzoneopensdkapi19,mqzoneopensdkapiV2,mqqOpensdkSSoLogin,mqqopensdkapiV2,mqqopensdkapiV3,wtloginmqq2,mqqapi,mqqwpa,mqzone,mqq | [注:若同时使用QQ和QZONE,则直接添加本格即可] |
新浪微博 | sinaweibo,sinaweibohd,sinaweibosso,sinaweibohdsso,weibosdk,weibosdk2.5 | [后两个若导入新浪SDK则需要] |
豆瓣 | 无需配置 | |
开心网 | 无需配置 | |
易信 | yixin, yixinopenapi | |
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, | |
fbauth2 | ||
无需配置 | ||
pocket-oauth-v1 | ||
pinit | ||
Line | line | |
KakaoTalk | kakaolink | |
KaokaoStory | storylink | |
无需配置 | ||
Tumblr | 无需配置 | |
非平台类 | 无需配置 | ( 如短信,复制,邮件等) |