iOS9适配遇到的问题
来源:互联网 发布:js 事件对象 target 编辑:程序博客网 时间:2024/05/22 13:11
最近在维护公司的一个项目,这个项目有些老了,为了增加存在感,boss要求能在通知栏显示一些小公告。于是开始去了解一些iOS8的 widget,当时手上可调试的机器只有一台iOS7,于是就将Xcode升级到7.2了,用自己的手机调试。
Xcode升级到7之后,调试的过程中出现了很多警告和编译出错的问题:
1)定位的问题:
在iOS8的基础上,增加Required background modes 键 ,如下图1。注意,这个键是表征的是一个数组,在做这个数组中增加一个对象 App registers for location updates。
图一:
对应的源码为:
2) http适配:
这里还有个坑,我们公司的后台把图片等资源放到了阿里云的服务器上,app这边请求向后台Get图片资源的时候,其实是http的协议来着。近期公司不会去更新存放图片的服务器。所以,要做适配了。当前Xcode版本是7.2,所以在info.plist文件中需要增加App Transport Security Settings这个键,App Transport Security Settings是个字典,在这个字典里面增加Allow Arbitrary Loads这个key对应的value是个布尔值,选择YES。
对应的XML文件为:
这里有个需要解释的:Xcode 7.1之后,编译器会自动把NSAppTransport SecuritySettings转化为App Transport Security Settings,对应的
NSAllowsArbitraryLoads 也会转化为 Allow Arbitrary Loads。目的是一样的,不需要过多的去深究。
3)白名单的问题:
项目中集成了支付宝、微信等三方SDK,由于这些三方公司开放的接口没有支持https协议,所以Xcode在升级到7.x之后,这些SDK会出现不能完成跳转到对应的APP,尤其是微信,都无法完成SDK的初始化。控制台会报出错误:
xxxx - error: "This app is not allowed to query for scheme xxxx''
建议先去对应的SDK平台去看看是否有新的SDK匹配了iOS9,或者有对应的适配方案。没有的话就在info.plist增加key:LSApplicationQueriesSchemes,类型为NSArray。需要支持的白名单,为string类型。如下图:
我这边需要天机的是微信和支付宝。
对应的XML文件:
以上就是目前遇到的坑,后续会陆续整理。
更全的iOS9适配请移步:
http://www.lai18.com/content/1885570.html
https://github.com/ChenYilong/iOS9AdaptationTips
关于iOS8 widget有兴趣的可以参看
http://www.cnblogs.com/xdream86/p/3855932.html
http://blog.csdn.net/phunxm/article/details/42715145
http://onevcat.com/2014/08/notification-today-widget/
- iOS9适配遇到的问题
- iOS9遇到的问题
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- 项目适配iOS9遇到的一些问题及解决办法
- IOS9适配会遇到的问题
- 项目适配iOS9遇到的一些问题及解决办法(更新两个小问题)
- 项目适配iOS9遇到的一些问题及解决办法(更新两个小问题)
- 项目适配iOS9遇到的一些问题及解决办法(更新两个小问题)
- urlscheme白名单问题以及项目适配iOS9遇到的一些问题及解决办法
- 【iOS9】我在iOS9遇到的一些问题
- 关闭Google"阻止了登录尝试"方法, 其他设备也能登录Gmail等谷歌服务
- CC2538之TinyOS例程实验:6-CCM(AES)实验
- 关于bcoder编程网使用七牛云存储
- Tomcat7+redis 实现session共享
- linux 下系统工具命令--sar
- iOS9适配遇到的问题
- Android主题定制
- USER版本与ENG版本差异
- java学习--继承
- 第4集:Scala模式匹配、类型系统彻底精通与Spark源码阅读
- 给wptouch绑定单独域名最终解决方案
- [LeetCode] Remove Element
- linux 自用简单命令 vi 等等
- spark源码阅读2-Job的提交与运行