支持IEEE 802.11mc WiFi协议,通过该协议可以实现基于WiFi的室内定位,
就是俗称的刘海屏支持,根据DisplayCutout可以获得刘海屏的缺口数量、位置和大小等相关信息。方便开发者进行适配。
在9.0上,你可以同时获取多个视频流。
9.0引入了新的图像类ImageDecoder
,提供了更加现代化的方法来解码图片。用于替代老的BitmapFactory
和 BitmapFactory.Options
APIs。
引入AnimatedImageDrawable
类用于绘制和显示GIF。
允许Activity启动picture-in-picture (PIP) mode。
引入channel的概念,必须设置。
没有仔细看,应该需要Google Service配合,国内不用考虑了。
8.0以后支持应用后期下载字体文件而不是打包在APK里面。这样可以有效减少APK体积。
8.0以后支持将字体文件保存在resource资源文件夹中,同时生成对应的R文件,这样就不必再放在asset文件夹中了。并且支持在对应xml中编写字体库。
官方支持TextView根据控件尺寸来决定其内部文字的大小。(我之前还自己写过一个类似的,很多坑,现在终于有官方的了,喜大普奔)
就是常见的桌面在长按某个应用图标,可以弹出一些子菜单,方便用户直接实现某步操作,
官方详细文档
其实每代新版本发布,或多或少都会Notification进行一定的优化和调整,介于这次调增相对大些,就大致介绍下。
在5.0引入ART模式,以AOT编译模式替代了JIT模式,在7.0后,Google又在ART模式中新加入了JIT模式的编译器,让JIT帮助AOT进行混合编译,提高应用的运行性能,节省磁盘空间占用。提高应用和系统更新速度。
7.0后使用SurfaceView将会比TextureView更加省电。
在Android6.0之前所有权限的获取方式,都仅需要将对应权限在Manifest
文件中进行申明即可,这种机制造成了流氓软件的盛行,为此Google在6.0中加入了运行时权限的概念。
对于一些敏感的权限,需要在代码中进行动态获取和判断。具体判断机制可参考Android6.0运行时权限请求
官方详细文档
Doze
拔出电源后,当屏幕关闭,一段时间不使用时,系统会进入一种休眠模式、该模式下系统会统一管理应用的行为。
App Standby
当一个应用没有被用户积极的使用时,系统会决定该应用是否进入闲置状态,在该状态下,系统会禁止该应用的网络和后台行为。
6.0中默认移除了支持库Apache HTTP client
。如果需要,请手动添加依赖:
android {
useLibrary 'org.apache.http.legacy'
}
当用户使用你的应用进行文本选择,你能显示文本选择事件如:剪贴,复制和粘贴。
Welcome to Android 5.0 Lollipop—the largest and most ambitious release for Android yet!
欢迎使用Android 5.0 Lollipop - Android史上最大,最雄心勃勃的版本!
Material design,中文名“材料设计”,在此之前的Android官方设计可以说是非常的low,我们都知道Google是一家技术为驱动的公司,也因为这个原因早期Android的UI设计被iOS各种吊打。但是这种情况在MD推出之后得到了改变。
控件库
官方基于该设计规范制作了控件库Design
,相信绝大多数开发者对这个库都不会陌生,这里就不多介绍了。
Z轴
除了带来了简单好用的控件库,自此以后Android视图从2D变成了3D,任何控件增加了一个新的坐标参数Z轴
,通过该参数,系统会自动帮助我们绘制出具有立体效果的层级View。
动画
在5.0之前,Android动画非常单一,仅有简单的帧动画和补间动画两种。官方也是为了填充动画方面的劣势,在该版本中添加了大量的高级动画,常见的包括:Activity转场动画,共享元素动画,Button涟漪动画,对象动画物理插值器等等。
Vector
支持Vector,是一种矢量图标格式,Google另外原生提供了很多常见的Icon。
RenderThread
一个名为RenderThread的新系统管理处理线程,即使在主UI线程中存在延迟时也能保持动画流畅。
这是Android历史上非常重要的里程碑,熟悉Android运行机制的小伙伴肯定不会陌生。
在此之前,Android应用采用的是一种叫即时编译(JIT)的机制,由于这种机制,系统在每次打开一个软件的时候都需要将软件的字节码进行一次编译。而ART推出后,系统摒弃了之前的编译模式,而改用预编译(AOT),简单来说就是在应用安装时候便将整个字节码编译成了本地代码保存下来,当应用运行时就跳过了编译过程,CPU可以直接运行已经编译好的本地代码。
这里由于篇幅关系就不过多介绍,总结就是在这种模式的加持下,Android的整体流畅度已经完全可以和iOS媲美。
提供了大屏显示的相关支持库和Android TV Input Framework (TIF) 、
概览屏幕(也称为最新动态屏幕、最近任务列表或最近使用的应用)是一个系统级别 UI,其中列出了最近访问过的 Activity 和任务。用户可以浏览该列表并选择要恢复的任务,也可以通过滑动清除任务将其从列表中移除。 包含不同文档的同一 Activity 的多个实例可能会以任务的形式显示在概览屏幕中。
支持OpenGL ES 3.1。
简单来说就是官方支持了屏幕录像类似的功能,需要申请用户权限。
引入Job Schedule