Android 10 开发亮点有哪些?

极力推荐文章:欢迎收藏 Android 干货分享 android

和您一块儿终身学习,这里是程序员Android

本篇文章主要介绍 Android 开发中的部分知识点,经过阅读本篇文章,您将收获如下内容:git

  1. 创新和新体验亮点
  2. 用户隐私亮点
  3. 安全功能亮点
  4. 相机和多媒体亮点
  5. Connectivity 亮点

本文参考连接以下:developer.android.com/about/versi…程序员

Android 10 围绕三个重要主题构建。 首先,Android 10 正在塑造移动创新的领先优点,具备先进的机器学习功能,并支持新兴设备,如可折叠和5G手机。 接下来,Android 10主要关注隐私和安全性,其中近50项功能可为用户提供更好的保护,透明度和控制。 最后,Android 10扩展了用户的数字健康功能(digital wellbeing),所以我的和家庭能够找到更好的技术平衡。安全

下面介绍Android 10中的开发人员以及今天如何使用它性能优化

创新和新体验

借助Android 10,您能够利用最新的硬件和软件创新为用户构建出色的应用体验。微信

Foldables

基于强大的多窗口支持,Android 10能够跨应用程序窗口扩展多任务处理,并提供屏幕连续性,以便在设备折叠或展开时保持您的应用程序状态。Android 10在onResumeonPause上添加了许多改进, 以支持多重简历并在焦点有效时通知您的应用。它还会更改 resizeableActivity 清单属性的工做方式,以帮助您管理应用在可折叠和大屏幕上的显示方式。为了帮助您构建可折叠设备,您能够将可折叠模拟器配置为Android Studio中的虚拟设备(AVD)。有关如何针对可折叠程序优化应用程序的详细信息,请参阅 开发人员指南。网络

使用Android 10,您能够优化折叠和其余大屏幕设备的应用程序。

5G 网络

5G网络提供始终如一的更快速度和更低的延迟,Android 10增长了对5G的平台支持,并扩展了现有的API, 以帮助您利用这些加强功能。您可使用链接API来检测设备是否具备高带宽链接,并检查链接是否已计量。有了这些,您的应用和游戏能够为5G以上的用户量身定制丰富,身临其境的体验并发

便捷回复通知 Notification

Android 10使用设备上的ML来建议通知中的上下文操做,例如对消息进行智能回复或打开通知中地址的地图。您的应用能够当即利用此功能,而无需执行任何操做。系统提供的智能回复和操做默认直接插入通知中。若是须要,您仍然能够提供本身的回复和操做。只需使用setAllowGeneratedReplies()setAllowSystemGeneratedContextualActions()在每一个通知的基础上选择退出智能回复 。框架

智能回复能够根据通知内容建议操做

Dark Theme

Android 10增长了系统范围的黑暗主题,很是适合低光照,有助于节省电池电量。用户能够经过转到“设置”或打开“省电模式”来激活新的系统范围的黑暗主题。这会将系统UI更改成黑暗,并启用支持它的应用程序的黑暗主题。您能够为应用程序构建自定义黑暗主题,也能够选择使用新的Force Dark功能,让系统从现有主题动态建立黑暗版本。您可能还但愿利用AppCompatDayNight功能为早期版本的Android上的用户提供黑暗主题。有关 更多信息,请参阅开发者指南。机器学习

Android 10可使用Force Dark动态为您的应用建立黑暗主题。

手势导航

Android 10引入了彻底手势导航模式,消除了导航栏区域,并容许应用程序使用全屏幕来提供更丰富,更身临其境的体验。它经过边缘滑动而不是可见按钮保留熟悉的Back,Home和Recents导航。要与手势导航无缝融合,您应该边缘到边缘,在导航栏后面绘制以建立身临其境的体验。要实现这一点,应用程序应使用 setSystemUiVisibility() API全屏布局,而后 根据须要处理 WindowInsets,以确保不会遮盖重要的UI部分。当即开始优化您的应用,并查看咱们的博客文章系列以获取更多信息。

手势导航为应用程序提供内容的全屏

快捷分享功能

共享快捷方式使分享更快捷,让用户直接跳转到另外一个应用程序以共享内容。开发人员能够发布在其应用中添加内容的特定活动的共享目标,并在共享UI中向用户显示这些目标。由于它们是预先发布的,因此共享UI在启动时会当即加载。共享快捷方式相似于应用程序快捷方式,并使用相同的ShortcutInfo API。ShareTarget AndroidX库也支持API。有关详细信息,请参阅示例应用

经过共享快捷方式,用户能够直接跳转到已添加内容的应用中的特定Activity

用户隐私

隐私是Android 10的核心焦点,从平台中更强的保护到设计时考虑到隐私的新功能。在以前的版本基础上,Android 10包含大量更改以保护隐私并为用户提供更多控制,改进了系统UI,更严格的权限以及对数据应用程序可使用的限制。有关如何在应用中支持这些内容的详细信息,请参阅隐私权更改。

用户如今能够选择在应用程序位于前台时授予对位置的访问权限

让用户更好地控制位置数据 - 用户能够经过新的权限选项更好地控制他们的位置数据 - 他们如今能够容许应用仅在应用实际使用时(在前台运行)访问位置。对于大多数应用程序而言,这提供了足够的访问级别,而对于用户而言,它在透明度和控制方面有了很大的改进。要了解有关位置更改的更多信息,请参阅开发人员指南 或咱们的博文。

保护网络扫描中的位置数据 - 扫描网络的大多数API都须要粗略的位置权限。Android 10经过要求精确的位置权限来增长对这些API的保护。

防止设备跟踪 - 应用程序没法再访问可用于跟踪的不可重置设备标识符,包括设备IMEI,序列号和相似标识符。默认状况下,设备的MAC地址在链接到Wi-Fi网络时也会随机化。阅读最佳实践以帮助您为用例选择正确的标识符,并在此处查看详细信息 。

保护外部存储中的用户数据 - Android 10引入了许多更改,使用户能够更好地控制外部存储中的文件及其中的应用程序数据。应用程序能够将本身的文件存储在其私有沙箱中,但必须使用MediaStore访问共享媒体文件,并使用系统文件选择器访问新的Downloads集合中的共享文件。在这里了解更多 。

阻止没必要要的中断 - Android 10阻止应用程序从背景中启动,意外地跳转到前台并从其余应用程序接管焦点。在这里了解更多 。

安全

Android 10引入了许多功能 ,经过加密,平台强化和身份验证的进步,使用户更加安全。了解更多关于这里的Android 10的安全更新。

存储加密 - 全部使用Android 10启动的兼容设备都须要加密用户数据,为了提升效率,Android 10还包括咱们新的加密模式Adiantum

默认状况下为TLS 1.3 - 默认状况下,Android 10还支持TLS 1.3,这是对TLS标准的重大修订,具备性能优点和加强的安全性。

平台强化 - Android 10还包括对平台的几个安全关键领域 的强化。

改进的生物识别技术 - Android 10扩展了 BiometricPrompt框架,以支持面部等被动身份验证方法,并添加隐式和显式身份验证流程。在显式流程中,用户必须在身份验证期间明确确认TEE中的事务。隐式流程设计用于具备被动身份验证的事务的轻量级替代方案。Android 10还可在须要时改进设备凭据的后备。在这里了解更多 。

camera 与 多媒体

照片的动态深度

应用程序如今能够请求动态深度图像,该图像由与深度相关元素相关的JPEG,XMP元数据以及嵌入在同一文件中的深度和置信度图组成。这些可以让您在应用中提供专业的模糊和散景选项。Dynamic Depth是 生态系统的开放格式,咱们正在与合做伙伴合做,将其引入运行Android 10及更高版本的设备。

音频的获取与播放

如今,任何播放音频的应用均可以让其余应用使用新的音频播放捕获API捕获其音频流 。除了启用字幕和字幕外,API还容许您支持流媒体游戏等流行用例。咱们在构建此新功能时考虑到了隐私和版权保护,所以应用程序捕获其余应用程序音频的能力受到限制,使应用程序能够彻底控制是否能够捕获其音频流。阅读此 博客文章中的更多内容。

新增音频 视频解码器

Android 10增长了对开源视频编解码器 AV1的支持,容许媒体提供商使用更少的带宽将高质量的视频内容传输到Android设备。此外,Android 10支持使用Opus的音频编码 - 一种针对语音和音乐流优化的开放式免版税编解码器 - 以及 支持它的设备上的高动态范围视频的HDR10 +。该MediaCodecInfo API 引入了一个更简单的方法来肯定视频渲染的Android设备的能力。对于任何给定的编解码器,您能够得到支持的大小和帧速率列表。

引入原生 MIDI API

对于使用C ++执行音频处理的应用程序,Android 10引入了 原生MIDI API,经过NDK与MIDI设备进行通讯。此API容许使用非阻塞读取在音频回调内检索MIDI数据,从而实现MIDI消息的低延迟处理。试试这里的示例应用程序和 源代码。

客制化麦克风

Android 10经过新的MicrophoneDirection API为您提供对音频捕获的更多控制 。您可使用 API 在录制音频时指定麦克风的首选方向。例如,当用户拍摄“自拍”视频时,您能够请求前置麦克风进行录音(若是存在)。此外,该API引入了一种控制可缩放麦克风的标准化方法,容许您的应用程序控制记录字段维度。

随处可用的Vulkan

Android 10 经过 咱们为高性能3D图形实现低开销,跨平台API,扩展了Vulkan的影响。Vulkan 1.1如今是运行Android 10及更高版本的全部64位设备的要求,而且建议全部32位设备使用。咱们已经看到生态系统中Vulkan支持的重要动力 - 在运行Android N或更高版本的设备中,53%支持Vulkan 1.0.3或更高版本。随着Android 10的新要求,咱们预计将来一年的采用率将进一步提高。

Connectivity

优化点对点互联网连接

咱们重构了Wi-Fi堆栈以改善隐私和性能,还改进了管理物联网设备和建议互联网链接等常见用例,而无需得到位置许可。经过网络链接API, 能够更轻松地经过本地Wi-Fi管理物联网设备,实现配置,下载或打印等对等功能。该网络建议的API 容许应用表面优选Wi-Fi网络给用户用于互联网链接。

wifi 性能优化模式

应用程序如今能够经过启用高性能和低延迟模式来请求自适应Wi-Fi 。这些对于低延迟对用户体验很重要(例如实时游戏,主动语音呼叫和相似用例)来讲是一个很大的好处。该平台与设备固件配合使用,以最低的功耗知足要求。要使用新的性能模式,请 使用或调用WifiManager.WifiLock.createWifiLock()。在这些模式下,平台与设备固件配合使用,以最低功耗知足要求。WIFI_MODE_FULL_LOW_LATENCYWIFI_MODE_FULL_HIGH_PERF

Android 基础

ART 优化

ART运行时的改进能够帮助您的应用程序更快地启动,消耗更少的内存,而且运行更顺畅 - 无需您的任何工做。Google Play提供的ART配置文件容许ART在应用程序运行以前预编译部分应用程序。在运行时,Android 10为ART的并发复制(CC)垃圾收集器添加了Generational Garbage Collection,使垃圾收集在时间和CPU方面更加高效,减小了垃圾收集,并帮助应用程序在低端设备上更好地运行。

此图表显示使用“播放”配置文件进行测试时特定应用的启动时间改善百分比

神经网络API 支持V1.2

咱们增长了60个新操做,包括ARGMAX,ARGMIN,量化LSTM,以及一系列性能优化。这为加速更大范围的模型奠基了基础 - 例如用于物体检测和图像分割的模型。咱们正在与硬件供应商和流行的机器学习框架(如 TensorFlow)合做,以优化和推出对NNAPI 1.2的支持。

温度监测 API

当设备过热时,它们可能会限制CPU和/或GPU,这会以意想不到的方式影响应用和游戏。如今,在Android 10中,应用和游戏可使用温度监测API 来监控设备上的更改,并采起措施帮助恢复正常温度。例如,流式应用能够下降分辨率/比特率或网络流量,相机应用能够禁用闪光或强化图像加强,或者游戏能够下降帧速率或多边形细分。在这里阅读更多。

兼容 公共API 接口

Android 10继续扩展对非SDK接口的限制,所以应用程序逐渐转向仅使用公共API。若是您当前使用的接口受到限制,则能够为该接口请求新的公共API 。为了帮助您进行转换并防止您的应用被破坏,咱们仅在您的应用定位到Android 10(API 29)时启用限制。有关限制的更多详细信息,请参阅 开发人员指南。

更新更快,新鲜出炉的Code

Android 10专为经过Project Treble进行更快速更新而构建,可在Android与设备制造商和芯片制造商的底层设备代码之间提供一致,可测试的界面。经过Treble,设备制造商能够更快速,更低成本地将Android 10带入符合Treble标准的设备。

Android 10也是第一个支持**Project Mainline **(官方称为Google Play系统更新)的版本,这是咱们用于保护Android用户并经过重要代码更改保持设备新鲜的新技术 - 直接来自Google Play。借助Google Play系统更新,咱们能够在运行Android 10及更高版本的全部设备上更新特定的内部组件,而无需设备制造商进行完整的系统更新。

对于开发人员,咱们但愿Android 10中的这些更新有助于推进各类设备之间的平台实施的一致性,而且随着时间的推移带来更大的一致性,这将下降您的开发和测试成本。

至此,本篇已结束,若有不对的地方,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!

微信关注公众号:  程序员Android,领福利
相关文章
相关标签/搜索