一 Android 1.0至Android 10.0 时间柱
二 Android studio 目前用到的sdk版本
三 Android 历史
时间回到2003年10月,Andy Rubin团队创办Android公司;伟大总是从心里决定开始的。
1 2005年8月
Google收购了成立仅22个月的高科技企业Android公司,Andy Rubin担任谷歌工程部副总裁继续负责Android项目;
2 2007年
11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,
该组织由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成。这一联盟将支持谷歌发布的手机操作系统以及应用软件,将共同开发Android系统的开放源代码。
3 2008年
5月28日,Patrick Brady于Google I/O大会上提出Android HAL架构图。
8月18日,Android获得美国联邦通信委员会的批准。
9月22日,谷歌正式对外发布第一款Android手机——HTC G1。
9月23日,谷歌发布Android1.0。
9月24日,全球业界都表示不看好Android操作系统,并且声称最多1年,Android就会被Google关闭。
Android Hal层(即 Hardware Abstraction Layer)是Google开发的Android系统里上层应用对底层硬件操作屏蔽的一个软件层次,说直白点,就是上层应用不必关心底层硬件具体是如何工作的,只需要调用底层提供的统一接口即可,这种设计思想广泛的存在于当前的软件的架构设计里。
其实Android系统里完全可以没有HAL硬件抽象层,上层应用可以直接通过API调用到底层硬件,但是Android自出现一直打着开源的旗号,而一些硬件设备厂商由于商业因素,不希望把自己的核心代码开源出来,而只是提供二进制的代码。另外,Android系统里使用的一些硬件设备接口可能不是使用的Linux Kernel的统一接口,并且还有GPL版权的原因,所以Google在Android架构里提出了Hal的概念,这个HAL其实就是独立的意思,Android系统不仅依赖于某一个具体的硬件驱动,而是依赖于Hal代码,这样,第三方厂商可以將自己不开源的代码封装在HAL层,仅仅提供二进制代码。
4 2009年
4月30日,Android1.5正式发布。
5月10日,HTC G1和HTC G2市场大卖,成为仅次于iPhone的热门机型。
9月25日,Android1.6正式发布。
9月29日,HTC Hero G3广受欢迎,成为全球最受欢迎的机型。
10月28日,Android 2.0 智能手机操作系统正式发布。
5 2010年
10月26日,Google宣布Android达到第一个里程碑:电子市场上Android应用数量达到10万个。
12月7日,Google正式发布Android2.3操作系统。
6 2011年
1月,Google对外宣布Android Market上的应用数量超过20万。
1月,Google对外公布数据,每日Android设备的新用户数达到了30万。
2月3日,谷歌发布了专用于平板电脑的Android 3.0蜂巢系统。
7 2012年
Android4.1 流畅 冰岛一个名为Dalvik的小渔村,寄存器架构而不是JVM中常见的栈架构。
8 2013年
Android4.4 瘦身,发布art
9 2014年10月Android5.0
art JobScheduler 它允许您通过为系统定义要在以后的某个时间或在指定的条件下(例如,当设备在充电时)异步运行的作业来优化电池寿命。
•MaterialDesign设计风格
•Material Theme
•Meterial Dialog
•CardView
•RecyclerView
•SwipeRefreshLayout
抽屉布局(DrawerLayout)
•Toolbar
•RippleDrawable 视图的水波纹效果
•android L 增加了一些 Activity 的转场动画 —— 爆炸、滑动、淡入淡出
RecyclerView/Cordinartlayout/Collingsplayout/Toolbar之类的UI控件的提供,主要是优化AndroidUI界面,形成自己独有的风格。
10 2015年5月Android6.0 动态权限
•指纹识别
•动态权限申请
•FloatingActionButton
•Snackbar
•TabLayout
•NavigationView
•CoordinatorLayout
•AppBarLayout
•CollapsingToolbarLayout
•App Linking
•TextInputLayout
11 2016年8月Android7.0
分屏多任务
进入后台多任务管理页面,然后按住其中一个卡片,然后向上拖动至顶部即可开启分屏多任务,支持上下分栏和左右分栏,允许拖动中间的分割线调整两个APP所占的比例。
移除三个隐式广播(网络变化/拍照后的广播/录制视频后的广播),以帮助优化内存使用和电量消耗。
•OpenJDK替换Java API
文件的访问权限,不能以file://xxx格式的Uri来访问文件,需要使用FileProvider,Uri格式为content://xxx。
DiffUtil
12 2017年8月22日Android 8.0的正式版Android Oreo(奥利奥)
画中画
•ContentProvider 支持分页,即获取内容的选中区域的子集;
•ContentProvider 和 ContentResolver 增加 refresh 方法,用来让客户端更容易的知道数据是不是最新;
•JobScheduler 更新,让应用更容易遵从后台执行限制;
•集合的处理的变化,AbstractCollection.removeAll() 和 AbstractCollection.retainAll() 始终引发 NullPointerException;
•AnimationSet:支持了动画的 seek 和动画倒转播放
SVG和TensorFlowLite,刘海屏和全局夜间模式
13 2018年8月7日 发布Android9.0
凹口屏的支持
增加文本放大镜
默认使用HTTPS
隐私权限的优化
通过WI-FI RTT室内定位
刘海屏支持
根据DisplayCutout可以获得刘海屏的缺口数量、位置和大小等相关信息。方便开发者进行适配。
多摄像头支持
你可以同时获取多个视频流。
ImageDecoder
9.0引入了新的图像类ImageDecoder提供了更加现代化的方法来解码图片。用于替代老的BitmapFactory和BitmapFactory.Options。
14 Android 10.0 创新技术和新体验
可折叠设备
5G 网络
通知中的智能回复
深色主题
手势导航 要实现这一点,应用应使用 setSystemUiVisibility() API 以全屏模式布局,然后相应地处理 WindowInsets,
以确保重要的界面区域未被遮挡。
设置面板