zgq105 / blog

2 stars 0 forks source link

Android 系统各版本新特性总结 #34

Open zgq105 opened 5 years ago

zgq105 commented 5 years ago

image

1. Android 4.4 KitKat

1.1 通过主机卡模拟实现新的 NFC 功能

Android 4.4新增NFC功能。

1.2 打印框架

打印机制造商可以使用新的 API 开发自己的打印服务。

1.3 存储访问框架

新的存储访问框架让用户能够在其所有首选文档存储提供程序中方便地浏览并打开文档、图像以及其他文件。用户可以通过易用的标准 UI,以统一方式在所有应用和提供程序中浏览文件和访问最近使用的文件。

1.4 低功耗传感器

优化传感器耗电问题,节省电量。

1.5 短信提供程序

新的短信提供程序和 API 定义了一个适用于所有短信或彩信处理应用的标准交互模式。(Telephony)

1.6 开发漂亮应用的新方式

1. 全屏沉浸模式 指可以全屏浏览视频、照片、地图等,隐藏所有系统UI。

2. 用于动画场景的转场框架 Android 4.4 引入新的转场框架。利用此转场框架,您可以定义场景、典型视图层次和转场,它们描述如何在用户进入或退出场景时制作场景动画或转换场景。(android.transition)

3. 透明系统UI样式

4.Chromium WebView Android 4.4 包含基于Chromium内核的WebView 的全新实现。新的Chromium WebView为创建和显示基于 Web的内容提供最新的标准支持、性能和兼容性。

1.7 新的媒体功能

1. 屏幕录制

2. DASH 通用加密

3. HTTP 直播流式传输

4. DSP 音频隧道

5. 音频监控

1.8 RenderScript Compute

主要指持续性能提升、GPU加速等。

1.9 图形绘制优化

Android 4.4 将 SurfaceFlinger 从 OpenGL ES 1.0 升级至 OpenGL ES 2.0。

1.10 新的连接类型

1. 新的蓝牙配置文件 新增低功耗蓝牙支持等。

2. 红外发射器 Android 4.4 引入了对内置红外线增强器的支持,以及一项新的 API 和系统服务,可以创建使用它们的应用。 3. Wi-Fi TDLS 支持 在相同WLAN 网络中的不同设备之间可以更快地流式传输媒体数据及其他数据。

1.11 无障碍功能

1. 系统范围内的隐藏式字幕设置

2. 增强的无障碍功能 API

1.12 支持全球用户

1. RTL 语言区域的可绘制对象镜像

2. 强制实施 RTL 布局

1.13 安全增强功能

1. SELinux(强制模式)

2. 改进加密算法

1.14 内存使用率分析工具

1. Procstats procstats是分析查看APP应用使用内存资源的情况。

2. 设备内存状态和分析

2. Android 5.0 Lollipop

2.1 材料设计(Material Design)

Android5.0提出材料设计的UI体验。

2.2 以性能为中心

Android 5.0 带来了更加快速、流畅和强大的计算体验。很大程度上提高了性能流畅度。

2.3 通知

Android 5.0 中的通知更醒目、更便于访问并且可配置程度更高。 1. 锁定屏幕 用户可以选择在安全的锁定屏幕上显示部分、全部或者不显示任何通知内容。

2. 新的元数据 Android 5.0 使用与您的应用通知关联的元数据,以更智能的方式对通知排序。(Notification.Builder)

2.4 大屏幕应用支持

Android 5.0新增Android TV模块。

2.5 以文档为中心的应用

Android 5.0 引入了重新设计的“概览”空间。更便捷预览最近打开的应用。

2.6 高级连接

1. 多个网络连接 Android 5.0 提供了新的多网络 API,允许您的应用动态扫描具有特定能力的可用网络,并与它们建立连接。(ConnectivityManager)

2. 蓝牙低功耗 Android 5.0 新增了允许应用利用蓝牙低能耗 (BLE) 执行并发操作的 API,可同时实现扫描(中心模式)和广播(外设模式)。

2.7 高性能图形绘制

1.对 OpenGL ES 3.1 的支持 新版本OpenGL的支持。

2. Android 扩展包

2.8 更强大的音频功能

音频功能的优化和新增新功能。

2.9 增强的相机和视频功能

Android 5.0 引入了全新的 Camera API,允许您采集 YUV 和 Bayer RAW 等原始格式,以及控制曝光时间、感光度和每一帧的帧持续时间等参数。

2.10 工作场所中的 Android

Android 5.0 引入了部署设备所有者应用的功能。(DevicePolicyManager)

2.11 屏幕采集和共享

2.12 新的传感器类型

1. 倾斜检测器

2. 心率传感器

3. 互动复合传感器

2.13 Chromium WebView(新版本)

Android 5.0 的初始版本提供了一版基于 Chromium M37 版本的WebView,添加了对 WebRTC、WebAudio 和 WebGL 的支持。

2.14 辅助工具与输入

2.15 用于开发省电应用的工具

新增的 Job Scheduling API 允许您通过将作业推迟到稍后或指定条件下(如设备充电或连入 WLAN 时)运行来优化电池寿命

3. Android 6.0 Marshmallow

3.1 运行时权限

Android6.0引入动态权限,让用户了解APP用到了哪些权限。让用户亲自授权和取消授权。

3.2 低电耗模式和应用待机模式

主要是节省电量的优化。 1. 低电耗模式

2. 应用待机模式

3.3 取消支持 Apache HTTP 客户端

Android 6.0 版移除了对 Apache HTTP 客户端的支持;推荐使用JDK中API HttpURLConnection。

3.4 BoringSSL

Android 正在从使用OpenSSL库转向使用BoringSSL库。

3.5 硬件标识符访问权

3.6 通知

此版本移除了Notification.setLatestEventInfo()方法;改用Notification.Builder类来构建通知。(建造在模式)

3.7 音频管理器变更

setStreamSolo()弃用,改为requestAudioFocus();setStreamMute()弃用,改为adjustStreamVolume()。

3.8 文本选择

在Android6.0中,当用户在应用中选择文本时,可以在一个浮动工具栏中显示“剪切”、“复制”和“粘贴”等文本选择操作。

3.9 浏览器书签变更

此版本移除了对全局书签的支持。

3.10 Android 密钥库变更

此版本Android密钥库提供程序不再支持 DSA。

3.11 WLAN 和网络连接变更

该版本应用只能创建和维护自己WifiConfiguration对象的状态。系统不允许您修改或删除由用户或其他应用创建的WifiConfiguration对象。

3.12 相机服务变更

相机服务中共享资源的访问模式已从之前的“先到先得”访问模式更改为高优先级进程优先的访问模式

3.13 运行时

ART运行时环境现在可正确实现 newInstance()方法的访问规则。

3.14 APK验证

该平台现在执行的APK验证更为严格。如果在清单中声明的文件在APK中并不存在,该APK将被视为已损坏。移除任何内容后必须重新签署APK。

3.15 USB连接

默认情况下,现在通过 USB 端口进行的设备连接设置为仅充电模式。要通过USB连接访问设备及其内容,用户必须明确地为此类交互授予权限。(由用户控制和切换USB的连接类型)

3.16 Android for Work变更

  1. 个人上下文中的工作联系人。

  2. WLAN 配置删除。

  3. WLAN 配置锁定。

  4. 通过添加Google帐户下载设备规范控制器。

  5. 对特定 DevicePolicyManager API 行为的变更。

  6. 对其他 API 的变更。 流量消耗android.app.usage.NetworkUsageStats类已重命名为NetworkStats。

  7. 对全局设置的变更。

4. Android 7.0 Nougat

4.1 电池和内存

  1. 低电耗模式。 进一步在Android6.0的基础上进一步优化低电量模式,延长电池寿命。

  2. 后台优化。 Android 7.0移除了三项隐式广播,以帮助优化内存使用和电量消耗。(移除CONNECTIVITY_ACTION、ACTION_NEW_PICTURE、ACTION_NEW_VIDEO)

4.2 权限更改

  1. 系统权限更改。 Android7.0私有目录访问限制。分享私有文件内容的推荐方法是使用FileProvider类。

4.3 在应用间共享文件

使用FileProvider类。

4.4 无障碍改进

Android提供了对视力不佳或视力受损用户做了改进和优化体验。

  1. 屏幕缩放。

  2. 设置向导中的视觉设置。

4.5 NDK 应用链接至平台库

从Android7.0开始,应用只能使用原生代码,则只能使用公开 NDK API。

4.6 Android for Work

Android 7.0 包含一些针对面向 Android for Work 的应用的变更,包括对证书安装、密码重置、二级用户管理、设备标识符访问权限的变更。

4.7 注解保留

VISIBILITY_BUILD->仅应编译时可见。 VISIBILITY_SYSTEM->运行时应可见,但仅限底层系统。

5. Android 8.0 Oreo

5.1 后台执行限制

  1. 提高电池续航的优化。

  2. 取消大部分隐式广播。

  3. 取消Service中startService()方法,改用startForegroundService()。

5.2 Android 后台位置限制

Android8.0降低了后台应用接收位置更新的频率。

5.3 应用快捷键

Android使用 ShortcutManager 类中的 requestPinShortcut() 函数创建应用快捷方式。

5.4 提醒窗口

5.5 输入和导航

5.6 网页表单自动填充

Android8.0自动填充框架提供对自动填充功能的内置支持。

5.7 无障碍功能

5.8 网络连接和 HTTP(S) 连接

对安全网络协议的优化

5.9 蓝牙

对蓝牙设备的优化,支持蓝牙5.0标准的支持。

5.10 无缝连接

Android8.0优化了WLAN的体验。

5.11 安全性

5.12 记录未捕获的异常

Thread.UncaughtExceptionHandler

5.13 集合的处理

AbstractCollection空指针问题的修复。

6. Android 9.0 Pie

6.1 电源管理

Android9.0进一步优化电源的管理,为了省电和延长电池寿命。 1. 应用待机群组。 系统将根据用户的使用模式限制应用对 CPU 或电池等设备资源的访问。

2. 省电模式改进。 开启省电模式后,系统会对所有应用施加限制。

6.2 隐私权变更

为了增强用户隐私,Android9.0限制后台应用访问设备传感器、限制通过 Wi-Fi 扫描检索到的信息,以及与通话、手机状态和 Wi-Fi 扫描相关的新权限规则和权限组。

6.3 安全行为变更

  1. 设备安全性变更。

  2. 加密变更。 Android 9 在 Conscrypt 中实现了更多的算法参数。 这些参数包括: AES、DESEDE、OAEP 和 EC。

6.4 ICU 库更新

6.5 Android Test 变更

Android 9 引入了多项针对 Android Test 框架库和类结构的更改。

6.6 Java UTF 解码器

6.7 使用证书的主机名验证

6.8 套接字标记

6.9 更详尽的 VPN 网络功能报告

从 Android 9 及更高版本开始,当 VPN 调用 setUnderlyingNetworks() 函数时,Android 系统将会合并任何底层网络的传输和能力并返回 VPN 网络的有效网络能力作为结果。

6.10

在 Android 9中,您不能从非 Activity 环境中启动 Activity,除非您传递 Intent 标志 FLAG_ACTIVITY_NEW_TASK。

6.11 屏幕旋转变更

6.12 Apache HTTP 客户端弃用影响采用非标准 ClassLoader 的应用

6.13 枚举相机

在 Android 9 设备上运行的应用可以通过调用 getCameraIdList() 发现每个可用的摄像头。(可实现前后置摄像头的切换等需求)