Android P 预览版新功能

做个笔记
原文 https://mp.weixin.qq.com/s/9kASHj-L1f-Cj0JCKYouFw

1,使用Wi-Fi RTT进行室内定位。
拥有硬件支持的Android P设备可以让应用使用RTT API测量附近Wi-Fi接入点(AP)的距离,设备不需要链接到AP便可使用RTT。只有手机能够确定距离,AP无法做到这一点。
2.凹口屏幕支持
凹口屏幕指iPhone X的刘海儿。可以调用getDisplayCutout() 来判断本地设备是否具有凹口屏幕然后再确定裁切区域的位置和形状。平台添加了一个新的窗口布局属性 layoutInDisplayCutoutMode 让您告诉系统如何以及何时将您的内容相对于裁剪区域进行布局。
3.消息通知的改进
改进了可视性和功能性。可以在对话中使用图片和表情。
4.多摄像头API。
可以在支持双摄像头的手机上实现创新功能。无缝变焦,散景和立体视觉。
5.用于位图和drawable 的ImageDecoder
使用ImageDecoder代替BitmapFactory。支持动画图像。您可以给 ImageDecoder 传递任何 android.graphics.PostProcessor。您也可以使用 ImageDecoder.decodeDrawable() 直接创建 drawable。如果编码图像是动画 GIF 或 WebP,则返回的 drawable 是新加入的 AnimatedImageDrawable 的一个实例。
6.HDR VP9视频,HEIF以及媒体APIs
默认支持HDR VP9 Profile 2 此外,您还可以通过 ImageDecoder 和 Bitmap Factory 将 jpeg 文件转化为 heic 文件,从 jpeg 文件中获取位图。您亦可使用新支持库 alpha 版本中的 HeifWriter,从字 YUV 节缓冲区、表面以及位图中写入 HEIF 静态图像。
7.JobScheduler 中的数据费用敏感度
JobScheduler 是 Android 的核心服务,帮助您在Doze、App Standby 和 Background Limits 状态更改时,更好地管理定时任务及工作。在 Android P 中,JobScheduler 可以更好地为用户处理与网络相关的任务,并与运营商单独提供的网络状态信号相协调。
添加任务时,尝试使用 setEstimatedNetworkBytes()、setIsPrefetch() 和 setRequiredNetwork() 来帮助 JobScheduler 妥善处理工作。执行作业时,请务必使用 JobParameters.getNetwork() 返回的 Network 对象,否则您将隐式地使用设备的默认网络,该网络可能不符合您的要求,从而导致意外的数据使用。
8.神经网络 API 1.1
我们在 Android 8.1 中引入了神经网络 API ,以加速 Android 上设备内置的机器学习。在 Android P 中,我们对这个 API 进行了扩展和改进,增加了对 9 个新操作的支持,它们分别是 Pad、BatchToSpaceND、SpaceToBatchND、Transpose、Strided Slice、Mean、Div、Sub 和 Squeeze。如果您拥有 Pixel 2 设备,则 DP1 版本现在包含一个带加速的 Qualcomm Hexagon HVX 驱动程序,可用于量化模型。
9.自动填充的改进
密码框的自动填充
10.用于 NFC 支付和安全交易的 Open Mobile API
11.应用安全
Android 现在提供了一个标准系统对话框,以提示用户触摸指纹传感器,并且在文案和位置管理方面会根据不同的设备做相应的匹配。同时,应用可以使用新的 FingerprintDialog API 触发系统指纹对话框。我们建议您尽快切换到这个新的系统对话框。
12.用户隐私
为了更好地保证隐私,Android P 限制所有处于空闲状态的应用对话筒、摄像头和所有 SensorManager 传感器的访问。当一个应用的 UID 空闲时,麦克风将会报告系统 “无音频信号”,传感器将会停止报告事件。应用使用的摄像头也会断开连接,如果应用尝试使用它们,则会生成错误。在大多数情况下,这些限制不会为现有应用带来新的问题,但我们仍然建议您从应用中移除此类传感器请求。
Android P 还让用户控制是否允许访问平台 build.serial 识别码 (它被放在 READ_PHONE_STATE 权限里) 。自 Android 8.0 以来,直接访问此识别码的功能已被弃用。想要访问 build.serial 识别码的话,您可以使用 Build.getSerial() 方法。
13.ART 性能提升
14.Kotlin 优化
15.电耗优化
16.通过公开 API 增强应用兼容性
随着 Android P 的到来,我们开始逐步限制对特定非 SDK 接口的访问权限,并要求开发者 (包括 Google 内部的应用团队) 使用公开 API 里的替代接口。

你可能感兴趣的:(Android P 预览版新功能)