一个好的APP最好支持90%设备,由于不同版本系统提供的API可能不同,所以了解不同版本间系统差异很重要,这样才能更好的适配更多的智能设备。
Android系统间API差异:
Android4.X
- 一个版本同时支持智能手机、平板电脑、电视等设备,Android系统设备迎来统一
- 重新恢复开源,第三方刷机包开始变多。
Android5.X这是一个里程碑的版本
- 基于Linux内核3.0
- 多核处理器优化
- 界面开发采用卡片化,扁平化(在原来的XY轴的基础上添加Z轴的设计理念)
- 添加更多类型的传感器
- 添加卡片显示的后台进程查看
- 添加通知栏浮动通知
- 添加了新的摄影技巧以及虚拟摄像机API,为开发者提供更丰富的摄像头控制
- Android运行时由Android核心库集和Dalvike虚拟机改成Android核心库集和ART(Android Runtime)模式
两者的区别就是Dalvike虚拟机采用了一种被称为JIT(just-in-time)的解释器进行动态编译,而ART模式则在用户安装App是进行预编译AOT(Ahead-of-time)。将android5.X的运行速度提高了3倍左右。
Android6.X
- 应用权限动态获取
- Doze电量管理功能
在“Doze”模式下,手机会在一段时间未检测到移动时,让应用休眠清杀后台进程减少功耗,谷歌表示,当屏幕处于关闭状态,平均续航时间提高30%,这个区别于IOS的墓碑机制。在安卓开发,需要后台运行时,最好在前台留有进程,防止被误杀 - 从Android6.X起,Ecilpse ADT不再更新支持Android开发。
- 系统底层加入指纹识别及开发相关的API,加大指纹开发的安全性。
- 添加Android Pay进一步强化移动支付,同时也是为了对抗Apple Pay
- 系统底层添加锁屏下语音搜索
7.添加 Now on Tap功能
此功能是和Google搜索紧密结合的功能,它可以让谷歌从任何应用中进行搜索。例如,在微信中聊天的时候提到餐馆,那么就可以在不跳转的情况下进行谷歌搜索。 - 添加App Links功能
通过此功能,Android平台能够向网络服务器提出申请,自主识别链接内容。直接跳转到App客户端中,改善用户体验,有利于让用户在体验更完善的App客户端完成更多操作。
Android7.X
- 添加原生的分屏模式
- Doze电量管理的优化
- 更便捷的通知栏,自动将多条通知合并
- 引入了全新的VulkanAPI 图形处理器API,可以大幅减少系统动画对CPU的占用。
- 支持app应用签名v2的打包方式(在AS2.2后,在打包签名应用时,可勾选jar打包(v1)和全应用打包(v2),详情自行百度)
Android8.X
- 移除安装未知来源的第三方开关,变成了每次安装未知的第三方都要手动授权
- 通知功能的改变,应用收到通知时,会在应用的右上角显示一个红点,长按会跳出一个弹出菜单
- 添加画中画功能
- 支持自动填写的功能。
Android9.0
对更大屏幕显示的追求和视觉等体验的优化,智能的开始体现(用户行为的学习及正确化引导,网络环境的智能适应,电池电量的优化),更加人性化。
- WIFI RTT进行室内高精度定位,开发者可使用进行室内定位
- 支持凹口屏幕(全面屏)支持
- 支持多摄像头的开发
- 处理图像解码,提供ImageDecoder替换原来BitmapFactory
- Android Dashboard功能,可查看用户的行为
- Wind Down:夜间模式;
- Adaptive Battery:更智能的方式来适应电池和屏幕,从而整体改善续航能力。
- Actions和Slices:通过检测用户的行为,让系统作出对应的动作。如插入耳机孔自动播放音乐,搜索“打车”自动显示打车软件等。
参考文档:
Android从1.0到 6.0各版本的差别
大致总结一下 安卓各大版本的差异(安卓4以上版本)
Android 9.0新特性
关于Android Pie(Android 9.0),你想知道的都在这了