前言

从毕业后到做开发已经两年多了,刚开始学习android时,觉的它很新奇,基本上朋友每个人都有一部手机,深深了解这个专业后,发现做一名Android开发师真的挺自豪的,是IT让我有了新的人生方向,毕业后知道自己以后要做什么,不再那么迷茫,说来也惭愧,干这么长时间了,竟然对Android操作系统一无所知,我相信打开这篇博客的人也是跟我一样好奇,233


介绍

你们知道android系统最早的版本是什么时候发布的吗?

第一个版本是Android1.0beta,发布于2007年11月5日,各位一定要记住,这可是我们Android老祖宗,不知道的话不觉的自己太Low吗?经过了多个版本的更新,现在最新的9.0版本最早发布于2018年1月25日的谷歌官网上,你们会不会觉的版本更新的真是太快了,尤其是刚接触学习Android开发的码友们,说到这里,突然觉的自己变老了,11年的时间,从天真无暇的少年变成了每天熬夜学习和拼命加班的老年人

从2009年5月开始,Android操作系统改用甜点来作为版本代号,这些版本按照从C大写字母开始的顺序来进行命名:纸杯蛋糕(Cupcake)、甜甜圈(Donut)、闪电泡芙(Éclair)、冻酸奶(Froyo)、姜饼(Gingerbread)、蜂巢(Honeycomb)﹑冰淇淋三明治(Ice Cream Sandwich)、果冻豆(Jelly Bean)、奇巧(KitKat)、棒棒糖(Lollipop)、棉花糖(Marshmallow)、牛轧糖(Nougat)、奥利奥(Oreo),此外,Android操作系统还有两个预发布的内部版本,它们分别是原子小金刚(Astro)和机器人班亭(Bender,电视动画《飞出个未来》角色)。

你们肯定会吐槽了,这是哪个人才发明的,其实不然,这是整个团队、公司、配偶、厨师、Android开发社区甚至是路人甲的集体智慧,当你胃口大开的时候看到某些图片,就会迸发出灵感,博主我也心中一万个策马奔腾,不过挺符合我们程序员的本质的,对把,干久了也就随意了!!!

过时的版本就不说了,下面来看

Android 4.x

  1. 新锁屏界面:
    Android4.0重新设计了锁屏幕UI,下方的解锁虚拟按键向周围发射出微光,轻轻拖动就可以解锁,比原来在UI上确实有很大的进步。
  2. 全新Widget排列:
    主屏幕上的Widget插件是Android区别于其他系统最大的特点,新的Widget将会像程序界面那样排列。程序和Widget插件分为两个标签,清楚明了。
  3. 更直观的程序文件夹:
    现在直接拖动程序到另一个程序图标上会生成文件夹,像iOS所作的那样,但区别在于拖动联系人快捷方式会生成一个快速拨号快捷方式,很智能,比原来便捷很多。
  4. 人脸识别解锁: Google在现场进行了演示,虽然最开始遇到点小麻烦失败了,但人脸识别解锁对于安全性保障还是挺有必要的。
  5. 截屏功能: 同时按下电源键和音量“下”即可,对于反馈系统Bug和分享手机信息是一个很实用的升级。
  6. 全新通知栏: 现在在锁屏界面也可以下拉通知栏查看新通知。如果不想要某条通知,水平滑动即可取消。
  7. 语音识别的键盘:
    现场识别中Androd4.0将Man识别成了Map,但令人惊讶的是它识别出了笑脸符号:-)的英文。用户可以通过增强的语音输入来发短信。
  8. 浏览器: 全新浏览器支持最多16个活动标签页,同样的,扔掉即可关闭某个标签页。而且直接支持存储网页进行离线浏览

Android 5.x

  1. Material design
    Material design算是Android 系统风格的里程碑,其3D UI风格新颖,贴近人机交互;
  2. 改善通知栏,提升可视化、亲近性、可编辑性。同时支持手机在锁屏状态也可接收到通知,用户可以在锁屏状态下,设置接收全部应用的通知或者接收部分应用的通知或者不接收所有应用的通知;
  3. 系统由以往的Dalvik模式改为采用ART(Android Runtime)模式,实现ahead-of-time
    (AOT)静态编译与just-in-time (JIT)动态编译交互进行;
  4. V7中引入CardView和RecycleView等新控件;
  5. 支持64位系统;

Material Design在主题样式的使用
作为我们开发者,最关心的还是如何在项目中使用Material Design风格:

设置应用的 targetSdkVersion 和 targetSdkVersion 为21
在values目录下的style资源文件中创建一个style,让其继承自 android:Theme.Material
在AndroidManifest中指定应用的主题或者Activity的主题为我们设定的样式
谷歌官方我们提供了三种配色风格的Material Design样式:

黑色主题 Theme.Material
明亮主题 Theme.Material.Light
明亮主题黑色ActionBar Theme.Material.Light.DarkActionBar
我们也可以继承系统提供的Material Design样式,进行配色修改:themecolor

android:colorPrimaryDark应用的主要暗色调,statusBarColor默认使用该颜色
android:statusBarColor状态栏颜色,默认使用colorPrimaryDark
android:colorPrimary应用的主要色调,actionBar默认使用该颜色
android:windowBackground窗口背景颜色
android:navigationBarColor底部栏颜色
android:colorForeground应用的前景色,ListView的分割线,switch滑动区默认使用该颜色
android:colorBackground应用的背景色,popMenu的背景默认使用该颜色
android:colorAccent 一般控件的选种效果默认采用该颜色
android:colorControlNormal 控件的默认色调 
android:colorControlHighlight控件按压时的色调
android:colorControlActivated控件选中时的颜色,默认使用colorAccent
android:colorButtonNormal默认按钮的背景颜色
android:textColor Button,textView的文字颜色
android:textColorPrimaryDisableOnly RadioButton checkbox等控件的文字
android:textColorPrimary 应用的主要文字颜色,actionBar的标题文字默认使用该颜色

主题不仅可以对Application和Activity使用,也可以对某一个控件单使用,或者是在xml布局中给一个根节点控件设置Android:theme属性,来修改它和它所有子控件的主题。
如果我们要对特定控件实例做自定义修改,更建议大家可以通过控件自身的API进行设置修改。

Android 6.x

  1. 新增运行时权限概念
    Android6.0或以上版本,用户可以完全控制应用权限。当用户安装一个app时,系统默认给app授权部分基础权限,其他敏感权限,需要开发者自己注意,当涉及敏感权限时,开发者需要手动请求系统授予权限,系统这时会弹框给用户,倘若用户拒绝,如果没有保护,app将直接崩溃,倘若有保护,app也无法使用相关功能。
  2. 新增瞌睡模式和待机模式
    瞌睡模式:当不碰手机,手机自动关闭屏幕后,过一会,手机将进入瞌睡模式。在瞌睡模式下,设备只会定期的唤醒,然后继续执行等待中的任务接着又进入瞌睡;
  3. 待机模式:假如用户一段时间不触碰手机,设备将进入待机模式。在这个模式下,系统会认为所有app是闲置的,这时系统会关闭网络,并且暂停app之前正在执行的任务。
  4. 移除对Apache HTTP client的支持,建议使用HttpURLConnection。如果还是想用Apache HTTP
    client, 那么需要在build.gradle中添加

    android {useLibrary 'org.apache.http.legacy'
    }
  5. Doze电量管理 Android
    Android6.0自带Doze电量管理功能,在“Doze”模式下,手机会在一段时间未检测到移动时,让应用休眠清杀后台进程减少功耗,谷歌表示,当屏幕处于关闭状态,平均续航时间提高30%。

Android 7.x

  1. 通知栏快捷回复 在Android
    N上,Android对通知栏进行了进一步的优化,其中一个非常大的改变就是让用户可以在通知栏上直接对通知进行回复,这对于一些IM类的App来说,提供了更加友好的回复功能。
  2. 加入原生分屏多任务功能,多任务快速切换
  3. VR Android N上对VR的支持,实际上是使用了一个新的跨平台图形计算库——Vulkan,Vlukan
    API提升处理能力,减少GPU处理,从而获得更佳的游戏体验,所以说,如果一个手机支持VR,那么从某种意义上来说,这个手机的性能应该是很赞的!
  4. 引入全新的JIT编译器,使得App安装速度快了75%,编译代码的规模减少了50%
  5. 安全:更安全的加密模式,可以对单独的文件进行加密,android系统启动加密

Android 8.x

  1. Notification Dots 在AndroidO之前,使用安卓手机的用户,想要看到哪些应用程序推送了通知,可能只有在下拉通知中心中看到,但在AndroidO中,谷歌对安卓的通知功能做出了改进,这就是全新的NotificationDots功能,它是位于应用程序图标之上的小小的循环点,只有当应用出现未读通知时,它才会出现。这时候长按应用程序图标,就会以类似气泡的形式快速预览。而在通知中心中删除这些未读通知,应用图标上的标记点也会消失。
  2. 自动填充(Auto-Fill) 对于用户设备上最常用的应用,Android
    O将会帮助用户进行快速登录,而不用每次都填写账户名和密码。例如当用户使用一个新设备时,可以从Chrome中提取已经保存的账户名和密码,选择之后,自动填充功能便可以在本地进行,适用于你可能用到的大多数应用程序。开发人员也需要对其应用程序进行优化,让其应用程序能够和自动填充功能更好地兼容。
  3. 自适应图标(Adaptive icons) Adaptive
    icons也是一项有趣的新功能,谷歌正在尝试整理Android中不一致的应用程序图标形状,这一功能为应用程序开发人员提供了适应其显示设备的每个图标的多个形状模板。因此,如果你的手机默认应用程序图示形状是圆角正方形,那么所有应用程序的图标都将是这个形状(前提是开发人员使用了这一功能)。也就是说,你将不再看到系统主屏上方形图标和圆形图标混合在一起的现象。
  4. 后台进程限制
    谷歌表示一直在优化安卓Android的后台应用限制策略,以最大程度减小后台应用对电池的消耗和对资源的占用。在AndroidO的更新中,当应用被置入后台后,AndroidO将自动智能限制后台应用活动,主要会限制应用的广播、后台运行和位置,但应用的整体进程并没有被杀掉。不过,部分层级比较重要的应用可以不受限制,但总的来说,AndroidO将严格限制后台进程对手机资源的调用。
  5. 画中画
    AndroidO中,谷歌更加强调多任务处理场景中的流畅性,在I/O2017上,谷歌演示了增强功能的画中画模式,为用户带来不同应用程序间的流畅操作体验。例如用户可以在Netflix上观看电影,支持将电影屏幕缩小成悬浮窗口,在看电影的同时进行查看日历、搜索信息等其他工作,这和普通的画中画分屏模式并不相同。这一功能的唤醒只需要点击Home键按钮,如果想结束这一模式,可以将小窗口滑下来以终止。

  6. 运行时权限策略变化
    在 Android O之前,如果应用在运行时请求权限并且被授予该权限,系统会错误地将属于同一权限组并且在清单中注册的其他权限也一起授予应用。
    对于针对AndroidO的应用,此行为已被纠正。系统只会授予应用明确请求的权限。然而一旦用户为应用授予某个权限,则所有后续对该权限组中权限的请求都将被自动批准。

    例如,假设某个应用在其清单中列出READ_EXTERNAL_STORAGE和WRITE_EXTERNAL_STORAGE。应用请求READ_EXTERNAL_STORAGE,并且用户授予了该权限,如果该应用针对的是API级别24或更低级别,系统还会同时授予WRITE_EXTERNAL_STORAGE,因为该权限也属于STORAGE权限组并且也在清单中注册过。如果该应用针对的是Android O,则系统此时仅会授予READ_EXTERNAL_STORAGE,不过在该应用以后申请WRITE_EXTERNAL_STORAGE权限时,系统会立即授予该权限,而不会提示用户

Android 9.x

  1. 刘海设计: 随着刘海屏的安卓手机越来越多,在google看来这种设计肯定会流行开来,所以退出最核心的变化,就是会支持类似IPhone
    X的流海屏设计,能更好的优化内容和布局,让那个系统和应用充分利用整个屏幕,尤其是刘海左右两侧的角落
  2. 黑白模式切换:
    Android黑夜模式在6.0的时候出现过,但是谷歌并没有引用正式版,这对于续航敏感和有关灯玩手机习惯的用户来说,新功能无疑更加受欢迎
  3. 其他性能优化:Google改进了助手可集成于应用之中、优化电池续航、支持多屏和可折叠屏幕等等
  4. 加入长截图:
    可以滚动截屏,用户可以把全部内容截取到一张图中

  5. 改善自带文件管理器:
    5.0以下原生安卓系统没有文件管理器,国产的手机都是更改过的

  6. 加入护眼模式:
    早期,手机只有“夜间模式”,仅是单纯地把画面调成了暗色调。现在,不少手机都有了“护眼模式”,比如iOS的“Night Shift”和厂商定制安卓的护眼模式。然而原生安卓就没有这个功能。

看完上面这些资料后是不是头是不是炸了,就像被98K一枪打爆三级头盔的感觉一样,没事,这些慢慢看,不用强行记住,顺其自然就好,邪恶的小眼神~~~

快速了解历史Android操作系统版本(开发学习攻略)相关推荐

  1. 【嵌入式Android开发学习攻略】手把手教你循序渐进的学习

    [嵌入式Android开发学习攻略]手把手教你循序渐进的学习 学习嵌入式主要有以下几个方面: C语言:C是必须学的,它是最基础的 操作系统:Linux.Android   目前Linux是主流,这个一 ...

  2. Android操作系统版本

    Android操作系统版本 Android1.1(发布于2009年2月) 主要特性: 闹钟 API示例 浏览器 计算器 摄像头 联系人 开发工具包 拨号应用 电子邮件 地图(包含街景) 信息服务 音乐 ...

  3. Android折叠屏开发学习(三)---使用MotionLayout实现折叠屏分屏效果

    学更好的别人, 做更好的自己. --<微卡智享> 本文长度为6259字,预计阅读11分钟 前言 今天是折叠屏开发的第三篇,前面已经介绍了铰链的角度监听和Jetpack Window实现监听 ...

  4. Carson带你学Android:这是一份全面详细的WebView学习攻略

    前言 现在很多App里都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝.京东.聚划算等等,如下图 那么这种该如何实现呢?其实这是Android里一个叫WebView组件实现 今天, ...

  5. Android学习攻略:手把手教你循序渐进地学习Android知识

    前言 如果你也学习Android,那么你大概率会看过我的文章.经常有读者给我留言:"该怎么学习Android?"."日常学习Android的方法是什么". 所以 ...

  6. Android 系统(189)---Android Handler:这是一份 全面、详细的Handler机制 学习攻略

    Android Handler:这是一份 全面.详细的Handler机制 学习攻略 前言 在Android开发的多线程应用场景中,Handler机制十分常用 今天,我将献上一份 全面.详细的Handl ...

  7. Carson带你学Android:这是一份全面详细的属性动画学习攻略!

    前言 属性动画的使用 是 Android 开发中常用的知识 本文将献上一份全面 & 详细的属性动画学习指南,将详细介绍属性动画的所有内容,包括:意义.作用.应用场景.功原理 & 具体使 ...

  8. 单片机入门一对一学习攻略, 看完马上独立开发程序

    大家好,我是华维单片编程的导师,今天给大家具体分享下关于51单片机的学习实践过程 以华维单片机学员入门教学为例,我们采用的基于STC 51单片机的实战项目教学. 下面我们来说下,初学者学单片机,从0到 ...

  9. java 高效计算99乘法表_【九九乘法表】九九乘法表学习攻略 九九乘法表快速记忆小诀窍...

    [九九乘法表]九九乘法表学习攻略九九乘法表快速记忆小诀窍 很多孩子的九九乘法表还是背的不熟练,下面是精心为大家整理的九九乘法表学习攻略,欢迎阅读.更多九九乘法表学习攻略相关内容请关注实用资料栏目! & ...

最新文章

  1. 【FPGA】SRIO IP核系统总览以及端口介绍(二)(I/O Port 含义介绍)
  2. C++运行库 Neptune C++ Runtime Library(xbmc)
  3. linux安装ppp服务器,服务器_最简单的Linux系统上的pptpd服务器安装,1. rpm -qa|grep ppp 检查ppp版本, - phpStudy...
  4. loadView与viewDidLoad不同
  5. ASP.Net Core 2.0中的Razor Page不是WebForm
  6. MySQL中批量插入数据
  7. leetcode刷题:合并两个有序链表
  8. html增删改查按钮控件,HTML DOM节点的增删改查
  9. 判断两个ListInteger是否包含同样的值,不考虑位置关系
  10. 1月17日云栖精选夜读:阿里云云数据库开了一个未来大会,谈了谈2038年的数据库趋势...
  11. 将luarocks整合进openresty,并安装lfs
  12. #VMware ESXI7.0的下载
  13. (软考)图示法求候选键,及快捷求候选键,和数据库模式分解的表格法,及无损连接分解的快捷判别方法
  14. 台式电脑 航嘉机箱 前面板耳机只有一边(左边)有声音 问题解决
  15. 西门子smart plc远程监控应用实例
  16. 软件工程----UML建模
  17. BZOJ_1778_[Usaco2010_Hol]_Dotp_驱逐猪猡_(期望动态规划+高斯消元+矩阵)
  18. 12个最好的开源报表工具
  19. Android逆向:通过Xposed解密柠某直播本地数据
  20. 时序逻辑电路总结【一】触发器

热门文章

  1. STM32 SPI+DMA驱动WS2812
  2. AI Canon精选资源清单;带AI功能的PS安装文件与教程;讯飞星火10月对标 ChatGPT;直播换脸工具盘点 | ShowMeAI日报
  3. Java 分数的实现 | 将float或double转换为分数
  4. 微信官方接口检测域名是否被封|微信域名防封检测
  5. hacksudo:2 (HackDudo) vulnhub靶场(NFS,vbox靶场环境配置)
  6. Go语言自学系列 | golang中的if else语句
  7. html下拉select美化,美化select下拉菜单
  8. 视图类成员函数GetDocument()和OnDraw()
  9. 一种伪DNA密码学方法
  10. 如何做一个网站?建网站需要什么?