不同版本SDK适配要点
1,指定minSDKVersion与targetSDKVersion
2,运行时获取版本号
3,使用系统内置的主题,会随着版本的更换而自动适配
4,用android提供的注解 @TargetApi(11)+ 版本号控制做兼容
Android 2.2 发行日期:2010.5.20
相对于上一个版本的改变:
1, 整体性能的大幅度提升
2, 3G网络共享功能
3, Flash的支持
4, App2sd功能
5, 全新的软件商店
6, 更多的Web应用API接口的开发
API(level 8)的改变:
1, 提供新的语音接口和第三方识别引擎进行交互
2, 新增几个接口使得照相和录像功能得到很大的提高
3, 增加了设备管理接口,可以控制设备的安全特性
4, 增加了UI模式,修改和增加了一些布局属性已更好的支持Activity
5, 实现账户很同步
6, 应用程序可以指定安装,用户的数据可以备份,可以管理平台的JIT编译
7, 添加许可机制
Android 2.3 发行日期:2010.12.6
相对于上一个版本的改变:
1, 增加了新的垃圾回收和优化处理事件,以提高对游戏的支持能力
2, 新的管理窗口和生命周期的框架
3, 支持VP8和WebM的视频格式,还提供新的音频效果器、
4, 增加了前置摄像头和近场通讯
API(level 9--10)的改变:
1, 新增android.net.sip包,可以轻松开发基于Sip的Voip的应用
2, NFC静距离通讯的支持
3, 新增陀螺仪和其他的传感器
4, 多摄像头的支持
5, 新增拍照API
6, 混响音效
7, 下载管理,支持长时间Http下载服务
8, 限制模式增加以避免ANR的发生
Android 3.0 发行日期:2011.2.22
1, 多任务处理,可以在桌面上使用开放性软件
2, 桌面工具的增加,例如桌面小窗口
3, 通知系统的增加
4, 硬件加速
5, 3D功能的使用
6, 增加视频通话功能
API(level 11)的改变:
1, 增加Fragments碎片容器
2, 新增Action Bar 活动栏
3, 系统剪切板的增加
4, 拖拽功能和增强的appWidget
5, 增强了状态提示栏
6, 增加了内容加载器
7, A2D蓝牙和耳机控制API
8, 增加了动画框架和扩展UI框架,以及图形相关
Android 3.1 发行日期:2011.5.10
本版本没有增加深刻新的内容大部分都是功能的优化:
1, 优化图片的成像效果
2, 优化虚拟按键
3, 优化用户体验
4, 简化根目录
5, 优化外部存储用户体验
API(level 12)的改变:
1, 简化Android设备USB支持
2, 增加多媒体MTP/PTP协议API
3, 增加输入设备及事件
4, 新增实时传输协议栈中 API
5, App Widget可改变大小
Android 3.2 发行日期:2011.7.15
该版本更新的内容
1, 错误修复和硬件加速优化
2, 新版本的Movie Studio、Movies和Music
3, 桌面小部件的自由缩放
4, 手机应用缩放兼容
5, SD卡支持
6, 七英寸和高通处理器获得支持
API(level 13)的改变:
该版本没有什么大的变化主要是屏幕大小的适配大的支持
Android 4.0 发行日期:2011.10.19
新特性:
1, 虚拟按键以增加屏幕显示的面积
2, 桌面Widgets列表呈现早标签页中,与程序列表累死并且共存
3, 文件夹的易于创建
4, 可视语音邮件
5, 日历的支持缩放操作
6, Gmail离线搜索,以及底部新快捷栏
7, 音量下键+电源键组合可以截图
8, 可定制桌面
9, 改建虚拟键盘纠错
10, 可以从锁屏界面直接访问应用程序
11, 优化复制粘贴
12, 新版浏览器
13, 新的Roboto字体
14, 流量控制系统
15, 相机应用
16, 人脸识别,刷脸解锁
17, 内置相片编辑器
18, 多任务多列表
19, 新的图库布局和组织方式
20, 联系人应用整合社交网络信息
21, Android Bean 可以实现两部手机之间信息互传
API(level 14—15)的改变:
1, Contacts Provider中的社交API:
2, Calendar Provider提供获取、增加、修改、删除Canlender的API
3, Voicemail及更好的多媒体效果
4, 相机的增强人脸识别功能
5, 通过NDEF进行4cm左右的静距离数据交换
6, 支持WI-FI Direct 设备的P2P连接,传输距离教Buletooth远
7, 支持Buletooth的健康设备可与Android通信,app可实现拼写检查服务,Text-to-speech的新API
8, 支持温度、湿度传感器
9, 硬件不在必须有Menu键
Android 4.1 发行日期:2012.7.9
1, 增加三级缓冲,使得动画变得更加流畅
2, 离线语音输入
3, 增加通知中心
4, 向硬件开发商发放平台开发套件
5, Google Play增加内容购买订阅功能
6, Android彩蛋
总结:Android 4.1的版本并没有很大的改变,只是对系统的改善,其中也有很多令用户兴奋的新功能,该版本完善了用户体验,整合新的Google服务,为Android系统的持续发展提供新的生命力
API(level 16)的改变:
总的来讲,该版本只要是提高性能、增强用户体验
1, 隔离服务
2, 内存警告
3, 增加调用 Content provide的健壮性的容错
4, App栈导航
5, 开放底层编解码接口、音频效果增强。相机自动对焦等多媒体
6, 支持大数据量的蓝牙传输,多播设备发现、Wi-Fi Direct服务发现等网络连接
7, 网络连接是否收费
8, Activity启动动画
9, 通知栏的三种风格
10, 增加Robot字体变种
11, 增加外部存储读权限、电视设备属性
Android 4.2 发行日期:2012.11.13
1, photo Sphere 全景拍照功能
2, 键盘滑动手势输入及更聪明的语音输入功能
3, 单一平板电脑装置多重账户登录与个人主页,并支持快速切换
4, Miracast 无线显示分享功能
5, 可直接进行造作的状态通知列功能
6, 新版 Google Now 新增Gmail登入消息作为数据源,以及航班追踪,酒店、餐厅预订,还有Gmail邮件的可缩放显示
7, 屏幕锁定界面可直接开启App及相机功能
8, 增加为盲人设计的语音输入以及手势模式导航功能
9, 可放大整个显示页及两指旋转和缩放功能
API(level 17)的改变:
1, 重要的行为变化
2, 新型互动屏保模式“白日梦”
3, 辅助显示器
4, 锁屏小部件
5, 多用户以及多用户环境中的数据保存,用户识别
6, 新的“全局设置”
7, 可以支持RTL布局
8, 实现了嵌套Fragment
Android 4.3 发行日期:2013.7.24
1, 一个更加快速、流畅而灵敏的用户体验
2, OpenGL ES 3.0高性能图形
3, 增强的蓝牙连接
4, 支持限制概况
5, 优化了位置和传感器的功能
6, 新媒体功能,如VP8编码器、表面的视频编码、媒体MUXER
7, 共建美好的应用新途径
8, 支持国际用户
9, 辅助功能和UI自动化
10, 企业和安全
11, 分析性能的新方法
API(level 18)的改变:
1, 多种功能判断位置,例如GPS位置,网络位置,蜂窝位置
2, 增加了后台下载通知进度条的显示
3, 修改了通告策略API
4, 修改了处理账户同步的添加和验证的接口
5, 新的蓝牙API,主要是降低蓝牙的功耗
6, 限制级别的API,可以创建受限的配置文件
Android 4.4 发行日期:2013.10.31
1, 优化了RenderScript计算和图像显示,取代OpenCL
2, 支持Dalvik模式,还支持ART模式
3, RAM的优化
4, 新图标、锁屏、启动动画和配色方案
5, 新的拨号和智能来电显示
6, 加强主动式语音功能
7, 集成Hangouts IM软件
8, 全屏模式
9, 支持Emoji键盘
10, 轻松访问在线存储
11, 无线打印
12, 屏幕录像功能
13, 内置字母管理功能
14, 低消耗音频和定位模式
15, 显得接触式支付系统
16, 新的蓝牙配置文件和红外兼容性
API(level 19)的改变:
1, 开放短信API,
2, 私密密钥加工厂 API的变动
3, NFC技术CardEmulation模式的应用
4, 提供印刷的打印管理器的API以及打印服务
5, 新增视图Hiearchies“场景和转换”l
API(level 20)的改变:
1、Daydream(白日梦)功能,可以将其理解为一个“屏保”。
2、锁屏界面现在也支持放置 Widgets,并且支持滑动开启相机。
3、通知抽屉(notification drawer)加入了更多的操作,可以打开 WiFi,调整屏幕亮度,打开飞行模式等等。
4、Gmail 支持缩放。
5、辅助功能方面的改进:三击放大屏幕,可以用两指来平移和缩放,并为盲人用户引进了语音输出和手势模式导航功能。
6、Gmail 现在也是 Google Now 的信息来源。Google Now 改进了航班追踪、酒店和餐馆预定、音乐及电影推荐的功能。Photo Spot 可以根据你的位置向你推荐拍照的好去处。
API(level 21)的改变:
1、加入了64位系统版本
随着64位处理器手机开始流行,谷歌在最新版Android 5.0终于加入了64位系统版本,也就是说,Android 5.0不仅拥有32位系统版本,还新增了64位系统版本;
2、ART模式作为默认选项
在上一版本的Android 4.4系统中,谷歌为安卓系统引入了全新的全新的ART模式,相比传统的Dalvik模式有了很大的改变,其显著提升了系统效能,不过安卓
3、其他新特性
1)最明显的变化是采用了全新的设计语言,被称之为“Material Design”,界面加入了五彩缤纷的颜色、流畅的动画效果,呈现出一种清新的风格。
2)还为开发者带来了5000个新API,从而让设备间更具整体感及互联性。
3)还包括新的电池模式、多账户登陆、访客模式以及通过蓝牙设备解锁等新功能。
API(level 22)的改变:
全新的Android M相比目前的Android Lollipop(5.0)有六项重大的改进:
1. App Permissions(软件权限管理):在Android M里,应用许可提示可以自定义了。它允许对应用的权限进行高度管理,比如应用能否使用位置、相机、麦克风、通讯录等,这些都可以开放给开发者和用户。
2. Chrome Custom Tabs(网页体验提升):新版的M对于Chrome的网页浏览体验进行了提升,它对登陆网站、存储密码、自动补全资料、多线程浏览网页的安全性进行了一些列的优化。
3. App Links(APP关联):Android M加强了软件间的关联,谷歌在现场展示了 一个例子,比如你的手机邮箱里收到一封邮件,内文里有以个Twitter链接,用户点击该链接可以直接跳转到Twitter应用,而不再是网页。
4. Android Pay(安卓支付):终于来了!Android支付统一标准。新的M系统中集成了Android Pay。其特性在于简洁、安全、可选性。Android Pay是一个开放性平台,使用户就可以选择谷歌的服务或者使用银行的APP来使用它,Android Pay支持4.4以后系统设备,在发布会上谷歌宣布Android Pay已经与美国三大运营商700多家商店达成合作。支付功能可以使用指纹来进行支付,这意味着今年基于安卓M的Nexus产品肯定会有指纹识别了。
5. Fingerprint Support(指纹支持):Android M增加了对指纹的识别API,谷歌开始在M里自建官方的指纹识别支持,力求Android统一方案,目前所有的Android产品指纹识别都是使用非谷歌认证的技术和接口。
6. Power & Change(电量管理 ):新的电源管理模块将更为智能,比如Android平板长时间不移动时,M系统将自动关闭一些App。同时Android M设备将支持USB Type-C接口,新的电源管理将更好的支持Type-C接口。
API(level 23)的改变
1.权限管理
权限管理是 Android M 最大的改变,权限管理更加精细,并且由以前的安装时静态授权,改为现在的运行时动态授权。大家对 Android 的权限吐槽已久,Android 应该能极大的改善这方面的问题。主要改变有:
系统设置中可以对 APP 各个权限单独控制
权限根据内容进行分组了
普通权限还是在安装时授权
其他权限在运行时系统弹窗授权,并且要解析使用这个权限的目的
对于开发者来说,需要小心处理权限相关的问题。在使用某个功能的时候,需要总是判断是否有改权限,并且通过合适的方式请求用户授权。关于 Android M 权限的处理,可以参考官方文档。 另外,这篇文章结合图文和代码讲述了 Android M 中权限模型,比较清晰,可以参考一下。
2.APP Linking
这是一个把 APP 和网页直接打通的技术,能够让 APP 能够直接来处理你的网站普通的 URL 链接,来展示你对应的网站内容。这绝对是一个值得关注的改进,Web 和 APP 之间缝隙将越来越小。这对既有网站又有 APP 的应用来说非常有利,例如知乎和淘宝等。
有点类似于之前的 APP 的 Deep link,可以通过特殊的 Schema 也可以让 APP 直接打开对应的内容。APP Linking 的特点是,只要使用传统的 URL 就可以,而且是根据 URL 的域名对应特定的 APP 的。
开发者需要做的是在 AndroidManifest.xml 做一下对应的声明即可。如果需要让系统默认用你的 APP 打开对应的 URL 的话,还需要网站配合提供 assetlinks.json。详情可以参考这里。
3.APP 数据自动备份
支持 APP 数据自动备份到 Google Drive,在你换手机的时候,能够直接把 APP 的数据恢复到你的手机上,你还可以配置些数据那些数据需要或者不需要备份。而且不用写任何代码就自动实现了。详情可以参考这里。
然而这些对国内的开发者来说,并没有什么用。国内厂商的 ROM 有些已经有或者准备会跟上,到时候都能享受到这样的便利。
4.指纹解锁
Android 官方支持指纹认证,可以用在解锁,或者任何需要验证用户的地方,例如支付。提供了新的 API FingerprintManager,让第三方 APP 来用来获得指纹认证的功能。具体使用方法可以参考这个实例。
5.直接分享
直接分享是在 APP 内直接弹出一个选择分享到其他应用的中的对象的列表,中间省略了选择需要分享的 APP,选择“联系人”之类的操作。Android 中分享已经做得很好了,这里又更进一步简化了分享操作。如果要让你的 APP 支持被直接分享,需要实现一个 ChooserTargetService,并且实现对应的处理分享 Intent 的 Activity。具体使用可以参考这里。
6.支持蓝牙触控笔
系统内置支持蓝牙触控笔,这样 Android 系统就默认支持高大上的触控笔了。并提供了 API 让你的 APP 来响应触控笔事件。
7.低功耗蓝牙扫描优化
优化了低功耗蓝牙扫描优化的扫描。现在低功耗蓝牙的应用越来越多,很多 APP 都需要扫描设备,扫描设备是一个非常重的操作,希望这次改动,能够带来一些改善。
8.支持主题化的 ColorStateLists
使用 context.getColorStateList(int id) 来获取当前主题对应的 ColorStateLists。
9.相机 API
提供 API setTorchMode() 来直接开关闪光灯,并且可以监听闪光灯的开光状态,以前很多 APP 已经支持用闪光灯来做手电筒,现在官方提供 API 来做这样的事情了。