一大波新功能来袭!Android 9 Pie更新内容大全(2)
Android 9中添加文字放大镜工具(Magnifier widget),提升文本选择方面的用户体验。由于该放大器提供了可以在文本上方拖拽的文本放大面板,所以有助于用户精准地定位光标或文本选择手柄。该功能可以灵活运用在所有附加在窗口的视图上,个性化小部件和定制文本呈现均是不错的应用场景。该放大器工具还可以提供任何视图或界面的放大版本,而不仅仅是文本。 用户安全与隐私 统一身份验证对话框 Android 9引入了统一的身份验证对话框,提示用户进行操作。应用不再需要自行设计对话框,而是通过调用BiometricPrompt API触发系统对话框。除指纹识别以外(包括屏幕下指纹识别),该API还支持面部识别以及虹膜识别。 若你的应用仍在使用自行设计的指纹识别对话框,谷歌建议尽快转用BiometricPrompt API。 高可信度用户确认 Android 9新增了高可信度用户确认(Android Protected Confirmation),该功能通过可信执行环境(TEE)确保提示文本被真实用户确认。只有在用户成功确认之后,TEE才会签发该文本,让应用进行后续验证步骤。 加强密钥安全保护 谷歌还加入了一个新的KeyStore类——StrongBox,并提供相应的API来支持那些提供了防入侵硬件措施的设备,比如独立的CPU,内存以及安全存储。你可以在KeyGenParameterSpec里进行设置,决定是否把密钥交给StrongBox安全芯片来保存。 DNS over TLS Android 9内置对DNS over TLS的支持:若网络DNS服务器提供支持,设备会自动将DNS查询升级为TLS查询。用户可以通过更改“网络和互联网”设置下的隐私DNS (Private DNS)模式来管理DNS over TLS行为。自行运行DNS查询的应用可以通过调用新的LinkProperties.isPrivateDnsActive() API来获取DNS模式相关信息。 默认使用HTTPS 为了将所有网络流量从明文(未加密的HTTP)逐步迁移至TLS,谷歌更改了网络安全配置的默认设置,以阻止所有明文流量,强制应用通过TLS建立网络连接,除非开发者明确允许特定域名使用明文传输。 基于编译器的安全缓解措施 Android 9将进一步扩展编译器级别的安全缓解措施,借助运行时危险行为监测进一步加强平台安全建设。Android 9通过控制流程完整性(CFI)技术解决了代码重用(code-reuse)和任意代码执行两大漏洞,并扩展了CFI在媒体框架和其它关键安全组件内的使用范围,如NFC与蓝牙。同时,Android 9还针对Android常见内核的LLVM编译添加了CFI内核支持。 此外,Android 9还将整数溢出检查器(Integer overflow sanitizer)的使用范围扩展到其他库,以缓解内存损坏与信息泄露这两个问题。谷歌调高了检查器在以下两类库中的优先级:1)存在历史漏洞,2)需要处理复杂且不受信任的输入,如libui、libnl和libmediaplayerservice一类的库都在调整范围内。 用户隐私 Android 9新加入多项机制,进一步加强对用户隐私的保护。系统禁止所有处于空闲状态的应用对话筒、摄像头和所有SensorManager传感器的访问。当应用的UID空闲时,麦克风将会报告“无音频信号”,传感器将会停止报告事件,应用使用的摄像头也会断开连接,并在应用试图访问时生成错误。在大多数情况下,这些限制不会对现有应用造成新的问题,但建议你从应用中移除此类传感器请求。 Android 9还让用户控制是否允许访问平台build.serial识别码(它被READ_PHONE_STATE权限保护)。自Android 8.0以来,直接访问此识别码的功能已被弃用。你可以调用Build.getSerial()方法,访问build.serial识别码。 感官新体验:摄像和影音的全面升级 多摄像头API以及其它改进 从Android 9开始,你可以在支持多摄像头API的设备上通过两个或更多实体摄像头同时访问视频流;在配有双前置或双后置摄像头的设备上,实现单摄像头无法实现的创新功能:如无缝变焦、散景和立体视觉。该API还允许你调用可以在两台或更多台摄像头之间自动切换的逻辑或混合摄像头视频流。 摄像头的其他改进还包括:利用新的会话参数(Session parameters)来减少初始捕捉时的延迟,表面(Surface)共享技术让摄像头客户端无须重启视频流便可处理各种场景。此外,谷歌还加入了相关API,提供基于屏幕闪光灯支持及OIS时间戳的访问权限。 HDR VP9视频以及HEIF图像 Android 9增加了对HDR VP9 Profile 2的内置支持。现在,你可以在支持HDR的设备上,把启用HDR功能的视频内容分享给你的用户。 另外,谷歌还添加了对HEIF (heic) 图像编码的平台支持。HEIF是目前比较流行的一种的压缩格式,它改善了图片的压缩效果,并减少了图片的储存空间以及网络流量。引入平台支持后,开发者可以方便地从后台服务器传输并使用HEIF图像。一旦确定你的应用与该数据格式兼容,可用于分享或者显示,开发者可以尝试将HEIF设定为应用内图片的储存格式。此外,你还可以通过ImageDecoder将jpeg文件转化为heic文件,或通过Bitmap Factory从jpeg文件中获取位图。你亦可使用AndroidX库中的HeifWriter从YUV字节缓冲区、Surface以及位图中写入HEIF静态图像。 使用动态处理增强音频 开发者可以调用Dynamics Processing API对音频进行动态处理,通过分离出特定频率的声音,降低过大的音量,或者增强过小的音量,来改善应用的音频质量。比如说,即便说话者声音小,离麦克风远,而且外界环境十分嘈杂,你的应用依然可以有效捕捉并他/她的声音,并进行相应优化。该API提供了多声场、多频段的动态处理效果,包括一个预均衡器、一个多频段压缩器,一个后均衡器以及一个串联的音量限制器。 用于位图和drawable的ImageDecoder (编辑:ASP站长网) |