从目前主流Android适配版本4.0/5.0开始
-
Android 4.0,4.1,4.2,4.3
-
支持OpenGL ES3.0
-
增强了蓝牙连接
-
优化位置和传感器
-
支持DayDream
-
人脸识别解锁
-
支持Photo Sphere全景照片
-
添加转场动画
5.0之前启动Activity时使用动画
startActivity(new Intent(this, Main2Activity.class)); overridePendingTransition(R.anim.in,R.anim.out);对应的入场
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:toYDelta="0" android:fromYDelta="100%" android:duration="1500"/> </set>出场
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:duration="1500" android:fromYDelta="0" android:toYDelta="-100%"/> </set>5.0之后Activity出入场动画大体分为两种,一种分解滑动进入,淡入淡出;另一种共享元素动画
详细介绍参考:
传送门
-
-
Android 4.4
-
存储访问框架
-
低功耗传感器
-
添加短信提供程序
-
添加新的媒体功能
-
图形
- GLES2.0 SurfaceFlinge
- 新的硬件合成器
- 支持虚拟显示
-
支持新的连接类型
- 新的蓝牙配置文件
- 红外发射器
- Wi-Fi TDLS 支持
-
无障碍功能
-
安全增强功能
-
内存使用率分析工具Procstats
-
RenderScript Compute
- 持续性能提升
- Android NDK 中的 RenderScript
- GPU 加速
-
添加打印框架
-
支持Android Beam
基于近场通信所做的功能,利用NFC技术让两部手机只需要靠近即可完成消息传递,蓝牙配对等
-
添加全屏沉浸模式
-
添加透明系统UI样式
-
-
Android 5.0
-
支持OpenGL ES3.1
-
媒体控件和 RemoteControlClient
-
getRecentTasks()
-
WebView API修改
-
自定义权限唯一性要求
-
支持托管配置文件
-
Android Runtime (ART)默认运行平台设置
-
通知
- Material Design 样式
- 声音和振动
- 锁定屏幕可见性
- 媒体播放
- 浮动通知
-
引入Material Design设计
-
RecyclerView组件以取代ListView
-
支持Android NDK中的64位
-
只能显示绑定到服务,取消隐藏绑定服务
-
TLS/SSL 默认配置变更
- 服务器不支持任何已启用的加密套件
- 应用对用于连接服务器的加密套件做出错误的假设
- 服务器不支持 TLSv1.1、TLSv1.2 或新的 TLS 扩展
-
-
Android 6.0
- 低电耗模式和应用待机模式
- BoringSSL
- 硬件标识符访问权
- 通知
- 音频管理器变更
- Android 密钥库不再支持 DSA。但仍支持 ECDSA
- WLAN 和网络连接变更
- 相机服务变更
- APK 验证
- USB 连接
- 运行时请求权限
- 取消支持 Apache HTTP 客户端
- 支持文本选择
-
Android 7.0
-
电池和内存
- 低电耗模式
- Project Svelte:后台优化
-
引入JIT编译器
-
权限更改
- 系统权限更改
-
在应用间文件共享权限控制
-
多窗口支持
-
通知栏快捷回复
-
支持VR
-
画中画
-
App快捷菜单
-
-
Android 8.0
-
通知渠道细分操作 Notification Channels
通知渠道是由应用自行定义的通知内容类别,借助渠道,开发者可以让用户对不同种类的通知进行精细控制,用户可以单独拦截或更改每个渠道的行为,而不是统一管理应用的所有通知。
创建通知渠道的步骤:
- 创建 NotificationChannel 对象,并设置应用内唯一的通知 ID。
- 配置通知渠道的属性,比如提示声音等
- 在 NotificationManager 中注册通知渠道对象。
-
画中画模式 PIP
PIP 是一种多窗口显示模式,多用于视频播放,即你可以一边发微信一边看视频。
PIP 模式不会改变 Activity 的生命周期。在指定时间只有最近与用户交互过的 Activity 为活动状态。 该 Activity 将被视为顶级 Activity。 所有其他 Activity 虽然可见,但均处于暂停状态。当一个 Activity 处于 PIP 模式时,其实它是出在暂停状态,但其内容会继续展示。
-
-
自适应图标 Adaptive Icons
-
自适应图标支持多种形状
通过定义两张图层(前景与背景)你可以制定你的桌面图标外观,你必须提供没有形状和阴影的 PNG 格式图象作为图层。
-
自适应图标由两张图层和一个形状来定义
在以前的 Android 版本中,图标大小定义为 48 x 48 dp。现在你必须按照以下的规范定义你的图层大小:
- 两张图层大小都必须为 108 x 108 dp。
- 图层中心 72 x 72 dp 范围为可视范围。
- 系统会保留四周外的 36dp 范围用于生成有趣的视觉效果(如视差和跳动)
-
创建你的自适应图标
首先你需要在 Application 标签中加入 Android:icon 属性,定义你的 icon 图标。其次如果你需要创建一个原型的 icon,你还需要加入 Android:roundIcon 属性。
接下来,你需要 res/mipmap-anydpi/ic_launcher.xml 文件中定义您的图层。在 选项中加入您的前景和背景图层。
-
-
固定快捷方式和小部件 — Pinning shortcuts
Pinning shortcuts 是一个比 APP shortcuts 更小的快捷方式,放置于桌面上,用于更快速的打开某一 APP 的某单一任务。Pinning shortcuts 在桌面上可呈现不同的图标显示。
- 首先使用 isRequestPinShortcutSupported() 方法校验手机是否支持启动这种快捷方式。
- 创建 ShortcutInfo 对象。
- 用 requestPinShortcut() 方法应用 Pinning shortcuts。你可以通过 PendingIntent 来通知你的 shortcuts 有没有创建成功。
-
Background Execution Limits
-
对Background Service 的限制
当一个应用程序在前台的时候,可以自由运行Foreground 和Background service。但是当应用程序切换到后台的时候,在开始几分钟所有的services都可以正常使用,过几分钟后,系统将会停止所有的Background service,就好比调用了Service.stopSelf( ) 。
在Android O之前,创建一个Foreground Service的方式通常是先创建一个Background Service的方式,再通过startForeground()的方式变为前台。
但是在Android O中,如果应用程序运行在后台,那么静不能查创建Background Service,同时也就不能创建Foreground Service。
出于这种考虑,Android O引入了一个新的方法:
NotificationManager.startServiceInForeground()调用这个方法就相当于startService( )在后台创建一个服务,然后立即调用的服务的startForeground( )方法使其变为Foreground。由于新的服务从未在后台,所以不受后台服务的限制。
-
对Broadcast 的限制
-
应用不能够再通过在AndroidManifest中声明广播的时候添加intent-filter来注册广播。
-
不管intent是显示还是隐式,都可继续使用Context.registerReceiver的方式注册广播。
-
-
-
Android P











网友评论