http://blog.ionic.io/preparing-for-ios-9/

Preparing for iOS 9

Tweet

 

By Max on September 12, 2015

iOS 9 is releasing next week, and with it comes some changes and bugs that Ionic developers need to be aware of. Even if your app was published for an earlier version of iOS, you might still need to make some fixes due to regressions released by Apple in the web browser.

Apple sent out an email last night (Friday 9/11/2015) encouraging developers to test and submit their apps NOW to make sure they are out in time for iOS 9 release next week: “To prepare, build your apps using Xcode 7 GM seed, and test with the GM seeds of iOS 9. Read the App Review Guidelines and use TestFlight to get feedback before submitting to the App Store.”

This would seem to indicate there’s time to make the iOS 9 roll out if you test, fix, and submit ASAP.

window.location bug

UIWebView, where Ionic, Cordova, and web content historically ran, introduced a regression with the way window.location works. Basically, the value doesn’t properly update synchronously anymore.

The impact of this is that Angular’s browser location detection behaves in unpredictable ways, which bubbles up through UI-Router and impacts Ionic.

There is a fix that must be applied in your Angular/Ionic app. Please read my post and use the patch created by Igor from the Angular team found in it.

Also, empty href links <a href="#"> will trigger your otherwise state, so test those and remove the empty href if necessary.

Radio button issue

UIWebView broke how tilde CSS selectors work. The impact of this change is probably quite widespread on the web, but has manifested itself in an Ionic bug with radio buttons. We’ve removed the need for the tilde selector and the issue is resolved.

To fix, add the new ion-radio-fix directive and corresponding CSS from this gist. Make sure to change any reference to <ion-radio> to <ion-radio-fix>.

Note: this fix is now in Ionic master. So, if you’re feeling adventurous, you could alternatively use a new release of Ionic to avoid having to apply the radio patch.

App Transport Security

iOS 9 introduces a new security feature that blocks non-HTTPS traffic in your app. However, this is a new feature that is only enabled for apps building with X Code 7 and iOS 9 SDK today. It will not break existing apps.

Since the changes above require recompilation, this will impact your development process and manfiest itself as a breaking change.

To fix, edit the MyApp-Info.plist file and add the contents of this patch.

Conclusion

iOS 9 introduces a number of new features, but also several regressions in the supplied UIWebView browser. These issues are not present in iOS Safari, so mobile websites built with Ionic will not break. They are also not present in WKWebView, the new web view environment in iOS.

There is some good news here: Cordova will soon support WKWebView on iOS, which will bring some great performance and feature improvements to Cordova and Ionic apps. We will move to this new feature as soon as it’s ready, and we hope that will happen some time this fall.

Thank you to everyone who helped isolate and fix these issues. It always sucks when breaking changes happen, and going forward we are going to tighten up our OS release testing process to make sure we catch these regressions early and also assume that regressions introduced in iOS betas will not be fixed in time for the GM releases. Unfortunately, we assumed these glaring bugs would be fixed in time but they were not.

ionic preparing for ios 9的更多相关文章

  1. 【ionic】Mac IOS下真机调试

    模拟调试不能保证真机一定没问题,所以真机调试是非常必要的一步 IOS设备 启用设备调试 在IOS设备中(Iphone,Ipad)中开始web检测器 设备->safari->高级->w ...

  2. Ionic在线打包IOS平台应用

    参见:http://docs.ionic.io/services/profiles/#ios-app-certificate--provisioning-profile Ionic云编译,需要注册.地 ...

  3. mac系统 Xcode打包ionic项目(iOS)

    一.环境搭建 1. 安装Node.js,使用node -v 查询版本号: 2. 安装ionic: $ sudo npm install -g cordova(可以指定版本,如cordova@7.0.1 ...

  4. ionic 开发解决ios上qq客服链接不跳转或者跳转到appstore

    不能跳转的情况需要 在ionic项目根目录下,打开config.xml文件,在<access origin="*" />后添加<allow-navigation ...

  5. ionic platform add ios, Error:spawn EACCES

    RT: cordova ionic 环境搭建好之后,需要添加平台才能打包,添加平台如果出错:Error:spawn EACCES, 原因是因为没添加hooks, 请使用 ionic add hooks ...

  6. ionic 项目中ios上遇到的软键盘输入法自动弹出的问题

    一.  安装插件 cordova plugin add ionic-plugin-keyboard 二. 软键盘显示监听 window.addEventListener('native.keyboar ...

  7. Mac下安装ionic和cordova,并生成iOS项目

    为了开发HTML5,除了最新使用React Native等之外,目前首选的为稳定的ionic+Angularjs来开发iOS和android. Ionic(ionicframework一款接近原生的H ...

  8. ionic day01教程第一天之多平台运行(ios & android)

    一.创建项目 创建项目 ionic start myApp 运行项目 (1)通过浏览器运行项目 进入项目,后运行ionic serve cd myApp ionic serve 浏览器运行效果 二.多 ...

  9. ionic ios 左滑 白屏

    之前发现ionic在发布ios之后,左滑屏幕的时候会出现界面变白,但是画面原有的位置点击还是有效的,但是点击之后界面是不正确的,返回到上上一步 然后查找资料发现是ios系统内置的左滑动作造成了影响,修 ...

随机推荐

  1. AngularJs遇到的小坑与技巧

    1. templateURL和路由之类的要在web server下运行. 2. 使用模板replace设为true,模板里也要有相应的标签,否则不出现任何数据. 3. 1.2版本之后,ngRoute模 ...

  2. ios开发之网络访问的数据类型

    1> JSON 特点:1. [ ] 表示数组  {} 表示字典 - 对象模型建立关系 2. 应用非常多,基本上移动开发的主要数据传输都是JSON 要使用JSON,从网络上获取到数据data后,直 ...

  3. 01-08-03【Nhibernate (版本3.3.1.4000) 出入江湖】二级缓存:NHibernate自带的HashtableProvider之缓存管理

    http://www.cnblogs.com/lyj/archive/2008/11/28/1343418.html 管理NHibernate二级缓存 NHibernate二级缓存由ISessionF ...

  4. HDU 1164 Eddy's research I

    题目链接 题意 : 给你一个数,让你用它的素数质因子表示出来. 思路 : 先打一下表,因为会有重复的质因子,所以从大到小开始找,并且找到一个之后不能就接着往下找,要再找一遍这个数. #include ...

  5. ElasticSearch Java api 详解_V1.0

    /×××××××××××××××××××××××××××××××××××××××××/ Author:xxx0624 HomePage:http://www.cnblogs.com/xxx0624/ ...

  6. hdu 2481 Toy

    好题!!!没话说…… 用到的知识面很多,这题的难点在于公式的推导. 原始推导过程见:http://hi.baidu.com/spellbreaker/item/d8bb3bda5af30be6795d ...

  7. C#操作.csv文件Demo

    1.使用OleDB操作.csv文件,比较费时 public static DataTable GetDataTableFromCsv(string path,bool isFirstRowHeader ...

  8. linux 免交互状态下修改用户密码

    当利用某些工具对linux用户进行远程密码更改时,输入[ passwd 用户名 ] 后需要输入两次密码, 但是如果你利用的某些工具无法与linux进行交互的情况下,就没办法变更用户密码了,这个时候可以 ...

  9. Filter设计实现IP地址限制

    示例:创建一个IP过滤Filter,当一个用户发出访问请求的时候,首先通过过滤器进行判断, 如果用户的IP地址被限制,就禁止访问,只有合法的IP才可以继续访问.IP过滤Filter代码如下: IPFi ...

  10. pinyin4j

    最近在倒腾与搜索相关的拼音检查技术,顺便看了一下中文转拼音开源插件pinyin4j的源码,参考资料:http://blog.csdn.net/hfhwfw/archive/2010/11/23/603 ...