据谷歌开发人员Ankur Kotwal宣称,Android 5.0(棒棒糖)引入了大量新的API,大概超过5000个。这些新的API覆盖了移动应用开发的多个领域,从全新的Material Design到强大的电池管理,以及使用ART的设备等。本文将为读者介绍其中最重要的一些API。
Material Design 我们在之前的一篇文章中已经详细介绍了Material Design,在此就不在赘述。在文中我们将提及为了促进Material Design在旧版本设备上的应用,提供大量应用组件和支持库的想法。在App经过测试并且一切都可以在Android 5.0上很好的运转之后,我们就可以用这些指导方针将其升级到Material Design。
提醒通知 使用铃声和振动的高优先级的通知现在可以在用户的全屏Activity之上展示,并且附带可能采取的行动。
锁屏通知 如果用户在锁定屏幕的状态下启用通知,应用就可以在锁定的设备屏幕上展示信息,这些消息将被分为私有——仅显示消息的一部分或者经过剪辑的消息,共有——显示整条消息,或机密——不显示任何信息。
WebView已经更新至Chromium 37版本,包括对WebAudio、WebGL和WebRTC的支持。onShowFileChooser()方法可以用于从设备中上传文件。如果得到用户的许可,WebView现在还可以访问相机和麦克风。
用户将不再需要等待WebView的更新,谷歌将通过谷歌Play自动更新WebView,就像更新Play Services一样。这意味着频繁的更新和最新的功能。
Volta项目通过向开发者展示他们的应用什么时候消耗电力以及消耗多少电力,让开发者理解他们的应用如何使用电力。使用新增的JobScheduler API,开发人员可以决定何时启动一个作业:当设备空闲时,当连接到一个不计量的网络时,充电时或在某个截止时点之前。
ART 在Android 4.4版本实验性引入的这一运行时模式现在已经成为应用运行的默认方式。ART提供预编译技术,比Dalvik更优的垃圾收集技术以及更好的调试功能。据谷歌介绍,ART不需要修改任何代码就可以提升应用的性能。
一些应用可能无法在ART模式下正常运行,如果应用中使用了用于运行C/C++代码的JNI接口,如果代码被混编器处理过或使用了不兼容的压缩垃圾回收技术。更多关于ART的细节详见Verifying App Behavior on the Android Runtime (ART)。
64位支持 NDK r10c增加了对64位编程的支持,包括提供更大的地址总线,更多的处理器寄存器和更多的指令集,对于针对NDK r10c做过调优的应用来说,所有这些支持都将转化为更好的性能。SDK r23中包含了一个64位的模拟器。32位的Java应用不需要任何改变就能够在64位上运行。
Android Work IT管理员能够在个人和工作相关活动中可共享的设备上安装并管理应用。管理员有他所安装的应用和数据的完全访问权限的同时,用户也有他所安装的应用的控制权限。数据也分别保存在两个独立的配置文件中。在安全和管理手段能够控制BYOD设备的同时,用户还能够在个人和工作相关信息之间获得统一的体验。而且只需要一个应用启动器,并且不需要切换配置文件就能够访问文档或通知。
Camera2 API替代了已经弃用的Camera类。根据官方文档的说明,Camera2
“将照相机设备建模为一个管道,这个管道接收捕捉单帧画面的输入请求,为每个请求捕捉单一图像,然后输出一个捕捉结果的元数据包和这个请求的输出图像的缓存集合。这些请求将被按顺序处理,并且一次可以有多个请求处于正在发送状态。由于照相机设备是一个多段式的管道,在大多数Android设备上,如果要维持完整的帧速率,就必须有多个请求处于正在发送状态。”
满足规格的设备现在可以捕捉分辨率为8MP,每秒帧数30FPS的未经压缩的YUV片段。
游戏开发 Android 5.0包含了对OpenGL ES 3.1的支持,其中包括计算着色器,独立渲染对象,间接绘制命令,多点采样和模板纹理,渲染语言改进,高级混合模式扩展以及调试,并且向后兼容ES 2.0和3.0。Android扩展包将提供一些附加功能,包括一些Java接口和对更加复杂的图形操作的原生支持。
连接性 Android 5.0会监控无线空间,搜索可用的网络,以便在必要时能够连接到网络。这对于需要使用指定网络(MMS,SUPL,运营商计费,等)或指定连接协议的应用来说非常实用。
低功耗蓝牙的外围模式(Bluetooth LE Peripheral Mode)让应用可以像感应器一样——如计步器、健康监控等,广播搜集到的数据并将这些数据传输到其他设备。
新的SDK,ADT和emulator(32位&64位 x86以及Android TV 32位)和NDK r10c已经发布,其中包括了Nexus 5和Nexus 7系统镜像的预览版本。11月初,预装了“棒棒糖”系统的Nexus 6、Nexus 9和Nexus Player会登陆各大商店,Nexus 4,5,7(2012 & 2013),10种其他未指定的设备和Google Play版的设备将会收到更新通知。
查看英文原文:Android 5.0 Brings Over 5,000 New APIs