本文共 734 字,大约阅读时间需要 2 分钟。
我们开发的iOS SDK,在升级到iOS9后,需要如何匹配呢?这主要也得根据App的设置来修改,主要有以下几个方面:
1. 网络请求
如果以前是使用的http的方式,在iOS9下进行网络操作就会出现下面的错误,网络操作会失败。
解决办法主要有下面两个:
方案一:立即让公司的服务端升级使用TLS1.2
方案二:虽Apple不建议,但可通过在 Info.plist 中声明,倒退回不安全的网络请求依然能让App访问指定http,甚至任意的http.
如果产品升级了服务器,都是用HTTPS,SDK也不需要修改什么,系统 Foundation 框架会默认使用TLS 1.2;如果产品不升级服务器,则需要修改app的Info.plist文件,sdk也不需做改动。
注意名字书写的正确性,我把NSAllowsArbitraryLoads写成NSAllowArbitraryLoads,http不起作用,还折腾了好一会。
2. Bitcode
Bitcode(通俗解释:在线版安卓ART模式)。未来Watch应用须包含Bitcode,iOS不强制,但Xcode7默认会开启Bitcode。如果sdk是xcode6以及以下的版本build的,则不包含bitcode,在xcode下使用就会出现以下错误:
注意:需要真机测试才会提示这个错误,模拟器是不会提示的。
解决办法:
(1) 如果App采用关闭Bitcode的方式,那么sdk也不需做修改
但是以后有可能会被当做错误,所以使用xcode7重新打包sdk,默认包含bitcode才是万全之策。
(2) SDK在xcode7下重新编译版本,开启Bitcode
3. 更灵活的后台定位
4. 企业级分发
5. URL scheme