阿狸写代码 2019-03-14
谷歌今日发布全新操作系统Android Q Beta 1,其主要特性有增强的隐私和安全功能,支持可折叠屏幕的增强功能,全新API接口,全新媒体编码解码器,全新摄像头功能,可扩展神经网络API(NNAPI),支持图形API Vulkan 1.1,以及更快的应用启动速度。
目前开发人员可以从google.com/android/beta进行下载。其中包括一个预览版的软件开发工具包(SDK),为开发人员提供了Pixel、Pixel XL、Pixel 2、Pixel 2 XL、Pixel 3、Pixel 3 XL的系统映像以及谷歌官方Android模拟器。
这是继Android N(后来命名为Android Nougat)、Android O (Android Oreo)和Android P (Android Pie)之后,谷歌连续第四年在3月份发布全新Android操作系统的开发者预览版。而Android Q Beta 1不仅是开发者预览版,也是这一全新操作系统的测试版。这表明不仅开发者可以应用Android Q,普通用户也可以尝鲜。和之前一样,该开发预览版的操作系统被命名为Android Q,之后谷歌会选择一个以Q开头的单词作为操作系统名称。
在过去的几年里,谷歌往往会等到发布第二个开发者预览版才会在更多的手机上应用全新操作系统,这很可能会保持不变。然而相比于其前辈,Android Q Beta 1支持更多型号的Pixel智能手机。
Android P的开发者预览版最亮眼的功能莫过于支持“刘海屏”等屏幕显示。同样在适配可折叠设备方面,Android Q的第一个开发者预览版也很“接地气”,谷歌早在去年11月就发布了对可折叠设备的支持。
Android Q开发者预览版的主要特性如下:增强的隐私和安全功能,支持可折叠屏幕的增强功能,全新API接口,全新媒体编码解码器,全新摄像头功能,可扩展神经网络API(NNAPI),支持图形API Vulkan 1.1,以及更快的应用启动速度。
Android Q开发者预览版功能
设备位置:让用户能够控制应用程序何时可以获得位置信息,包括应用程序何时不使用位置信息。用户可以设置应用程序无法使用位置信息,可以选择只有应用程序在运行或者在后台运行时才能使用其位置信息。
存储:Android Q开发者预览版提供对共享文件访问的更多控制。用户将能够通过权限控制应用程序对照片、视频和音频集的访问。应用程序必须使用系统文件选择器进行数据下载,这能够让用户决定应用程序可以访问哪些下载文件。开发人员还必须改变应用程序在外部存储上使用共享区域的方式。
后台运行:减少应用程序意外跳出并占据屏幕等干扰。应用程序将被禁止在后台启动Activity组件。应用程序开发人员可以通过高优先级通知或全屏图快速吸引用户的注意力,比如来电或警报应用。
用户数据ID:Android Q开发者预览版限制对不可重置设备标识符的访问,其中包括设备IMEI、序列号和类似标识符。默认情况下,当连接到不同的Wi-Fi网络时,Android Q也会随机分配设备的MAC地址。
对可折叠屏幕的支持:应用程序将能够更好地适配可折叠屏幕和其他大屏幕设备。
共享快捷方式:在全新操作系统下,应用程序能够与其他应用更快共享快捷方式,用户直接跳转到另一个应用共享内容的速度会变得更快。
设置面板:能够在应用程序上下方直接显示关键系统设置。新的设置面板API使用Android 9 Pie中引入的slice功能,为用户提供一个带有相关系统设置(如Wi-Fi、飞机模式、移动数据、NFC和音频音量)的浮动UI。用户无需离开应用程序进行系统设置。
连接权限、隐私和安全性:对于蓝牙、蜂窝网络和Wi-Fi连接,需要FINE位置权限,从而提高设备连接家庭、工作网络以及开放网络的安全性。
改进的点对点(peer-to-peer)和互联网连接:对Wi-Fi堆栈进行了重构,以改善隐私、性能以及管理物联网设备和建议互联网连接等常见用例。Android Q将自行处理Wi-Fi扫描,在Wi-Fi选择列表中显示匹配网络,并在这些网络的范围内根据历史记录进行连接。
Wi-Fi性能模式:高性能和低延迟模式允许开发人员调用相应函数请求自适应Wi-Fi。谷歌希望这些功能有助于实时游戏、活动语音呼叫等类似用例。
支持动态深度图像:应用程序可以请求动态深度图像,该图像包含一个JPEG、与深度相关的XMP元数据,以及嵌入在同一文件中的深度和置信度图。这使得开发人员可以支持3D图像和AR摄影等用例。动态深度将是Android生态系统中的一种开放图像格式。
全新的音频视频编码解码器:支持开源视频编解码器AV1,音频编码Opus以及HDR10+。
原生MIDI API:这个API允许在C++环境中执行音频处理的应用程序通过NDK与MIDI设备通信。它允许使用非阻塞读取在音频回调中检索MIDI数据,从而支持对MIDI消息(示例应用程序源代码)进行低延迟处理。
支持Vulkan原生渲染引擎ANGLE:对渲染引擎ANGLE的支持使得应用OpenGL ES的应用程序和游戏将能够利用Vulkan的性能和稳定性,自由度和开放度都非常高。
Vulkan扩展:谷歌正在与设备制造商合作伙伴合作,使所有运行Android Q或更高版本64位设备能够兼容Vulkan 1.1。因此,Vulkan将成为应用程序和游戏所使用的统一高性能图形API。
神经网络API 1.2:其中包括60个新项目,包括ARGMAX, ARGMIN,量化LSTM,以及一系列性能优化。谷歌正在与硬件供应商和诸如TensorFlow等主流机器学习框架合作,优化对NNAPI 1.2的支持。
ART性能:继续改进应用运行模式,帮助应用程序启动更快,消耗更少的内存,并帮助应用程序在低端设备上运行得更好。
所有TLS连接都默认添加并启用了对TLS 1.3支持。谷歌表示,其基准测试表明,与TLS 1.2相比,使用TLS 1.3可以更快建立安全连接,速度高达40%。
通过公共API实现更多兼容性:谷歌限制了对更多非SDK接口的访问,并要求开发人员使用公共接口。
测试计划