收藏本站
博为峰Android开发培训Banner
您所在的位置:博为峰教育首页 > 资料精选 > 学习资料 > 【学习资料】Android N七大新特性

【学习资料】Android N七大新特性

    发布时间:2016年03月24日 15:25分      来源:博为峰教育网采编       关键词:android开发         | 上一篇 | 下一篇 |


 

  3. 流量节省程序(Data Saver)

 

       Android N中提供了一个全局的流量控制机制,目的自然是为了防Android开发应用程序在后台恶意偷跑宝贵的移动流量。这个功能是默认关闭的,一旦开启之后除了GMS(Google Mobile Service,谷歌移动服务)外,其他应用都是默认不允许在后台使用超过前台所消耗的移动流量。

 

       对于andriod开发者而言,在Android N系统中要主动检查用户是否开启了流量节省程序,并注意节约后台时的数据流量消耗。如果确实需要在后台使用数据流量,也要注意引导用户放开对本应用的限制。

 

  4.  Android框架中提供部分ICU4J API支持

 

       ICU4J(International Components for Unicode)是由IBM维护,基于IBM公共许可证分发的免费开源Unicode工具库,开发者可以使用ICU4J根据各地的风俗和语言习惯,实现对数字、货币、时间、日期、和消息的格式化、解析,对字符串进行大小写转换、整理、搜索和排序等功能。

 

       但由于Android N内置了部分ICU4J API,如果你的安卓应用只使用了这部分的API,那今后就可以不再集成庞大的高达10MB左右的ICU4J库了。开发者可以在Google Play上针对使用Android N的用户提供不含ICU4J的轻量安装包,而针对更早版本系统提供包含ICU4J的完整安装包。

 

       ●Android API版本ICU 版本CLDR 版本

       ●Android N5628

 

  5.  开始支持Java 8

 

       从Android N开始,android开发者可以使用Java 8来编写应用程序,目前Android N对于Java 8的支持并不全面,但这依然是一个重量级的更新。目前支持以下内容:

 

       ●默认和静态接口方法:使开发者可以修改接口而不破坏原来实现类的结构;

       ●Lambda表达式:不仅让代码变得更简单、更可读、最重要的是代码量也随之减少很多;

       ●重复注解:允许在同一申明类型(类,属性,或方法)的多次使用同一个注解,提高可读性;

       ●反射及语言相关的API;

       ●公用工具API;

 

       为了使用Java8同时还需要引入Jack编译工具链,与传统编译工具链相比的优势在于全部开源,编译速度更快。Jack编译工具链完整地包含了重打包,压缩,混淆,Multi Dex工具,使用Jack编译工具链之后将不需要再依赖类似ProGuard和Jarjar之类的单独组件。

 

       Jack编译工具链向下支持到Android 2.3应用的编译。同时Jack也是一套面向未来的编译工具链,未来预计还会支持Java 9,以及Java X。android开发者也可以继续使用Java7开发针对Android N的应用程序,但是编译时依然要使用JDK8。Jack编译工具链虽然非常诱人,但是对于开发者来说依然要做好充分的准备和测试工作。

 

  6. 增强多语言支持 (Language and Locale)

 

       在Android N之前的系统中,多语言的匹配略显粗暴,例如一个讲法语(瑞士)的用户,使用一个包含默认英语(美国)和法语(法国)资源的应用。匹配顺序为:

 

       a) 法语(瑞士)-->匹配失败;

       b) 法语->匹配失败;

       c) 使用默认->英语;

 

       但是这样的匹配,并没有考虑到android开发用户懂不懂英语,只是因为英语是默认语言。而在Android N中,语言资源的匹配顺序优化为:

 

       a) 法语(瑞士)->匹配失败;

       b) 法语->匹配失败;

       c) 查找法语的子项->法语(法国);

       d) 使用法语(法国);

 

       这样匹配方式的好处在于,在没有法语(瑞士)语言资源的情况下,法语(法国)的用户接受度必然高于英语(美国);

 

Android N七大新特性 

 

       同时,海外很多国家的公民同时掌握多种语言。Android N允许用户用户选择多种系统语言,并基于上述的多语言匹配顺序的优化,用户使用各种移动应用时看到自己母语的概率也会有所提高。

 

       对于Android开发来说,虽然Android N提供了容错能力更强的语言匹配方案,但这是以延长匹配时间为代价的,因此为了加快语言匹配速度,提高资源可维护性,应该将各种语言资源尽量提升到同源语目录下。例如将es-US和es-ES合并到es-419目录下。Android N提供了接口获取用户设置的语言列表,应用在显示多语言内容时,应该考虑到语言列表的因素以提升用户体验。例如对于提供网页翻译功能的浏览器来说,如果用户显示了语言列表中任意一种语言,就不应该再提示用户翻译。

 

       7. 更加省电 (Efficiency)

 

       在安卓6.0中,安卓引入了新的省电机制Doze,当时针对的场景只是当手机同时处于灭屏以及静止状态来减少应用对电量的消耗。但是在实际使用中手机灭屏时不仅仅是处于静止状态,还有很多情况下是处于运动状态的,例如步行,坐车,坐飞机等情况,这时Doze就不会生效。比如你出门在外把手机放在裤子口袋,若是Android 6.0的Doze则会认为用户还可能会使用设备而不启动后台省电管理机制。Android N在此基础上更进了一步,将Doze的作用范围扩展到手机灭屏的所有时间段,无论是处于静止还是运动,省电效果也有望进一步提高。

 

  

       怎么样?Android N的新变化是不是很惊艳?面对这么多让人欣喜的功能,android开发者就耐心等待Android N正式版的更新吧!APUS用户系统将率先适配Android N,为更多全球用户带去最佳的移动互联网接入体验。