欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

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

程序员文章站 2022-07-06 10:57:26
android快速了解历史操作版本(开发学习攻略) 你们知道android系统最早的版本是什么时候发布的吗? 第一个版本是android1.0beta,发布于2007年11月5日,各位一定要记住,这...

android快速了解历史操作版本(开发学习攻略)

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

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

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

从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

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

android 5.x

material design
material design算是android 系统风格的里程碑,其3d ui风格新颖,贴近人机交互; 改善通知栏,提升可视化、亲近性、可编辑性。同时支持手机在锁屏状态也可接收到通知,用户可以在锁屏状态下,设置接收全部应用的通知或者接收部分应用的通知或者不接收所有应用的通知; 系统由以往的dalvik模式改为采用art(android runtime)模式,实现ahead-of-time
(aot)静态编译与just-in-time (jit)动态编译交互进行; v7中引入cardview和recycleview等新控件; 支持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

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

移除对apache http client的支持,建议使用httpurlconnection。如果还是想用apache http
client, 那么需要在build.gradle中添加

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

android 7.x

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

android 8.x

notification dots 在androido之前,使用安卓手机的用户,想要看到哪些应用程序推送了通知,可能只有在下拉通知中心中看到,但在androido中,谷歌对安卓的通知功能做出了改进,这就是全新的notificationdots功能,它是位于应用程序图标之上的小小的循环点,只有当应用出现未读通知时,它才会出现。这时候长按应用程序图标,就会以类似气泡的形式快速预览。而在通知中心中删除这些未读通知,应用图标上的标记点也会消失。 自动填充(auto-fill) 对于用户设备上最常用的应用,android
o将会帮助用户进行快速登录,而不用每次都填写账户名和密码。例如当用户使用一个新设备时,可以从chrome中提取已经保存的账户名和密码,选择之后,自动填充功能便可以在本地进行,适用于你可能用到的大多数应用程序。开发人员也需要对其应用程序进行优化,让其应用程序能够和自动填充功能更好地兼容。 自适应图标(adaptive icons) adaptive
icons也是一项有趣的新功能,谷歌正在尝试整理android中不一致的应用程序图标形状,这一功能为应用人员提供了适应其显示设备的每个图标的多个形状模板。因此,如果你的手机默认应用程序图示形状是圆角正方形,那么所有应用程序的图标都将是这个形状(前提是开发人员使用了这一功能)。也就是说,你将不再看到系统主屏上方形图标和圆形图标混合在一起的现象。 后台进程限制
谷歌表示一直在优化安卓android的后台应用限制策略,以最大程度减小后台应用对电池的消耗和对资源的占用。在androido的更新中,当应用被置入后台后,androido将自动智能限制后台应用活动,主要会限制应用的广播、后台运行和位置,但应用的整体进程并没有被杀掉。不过,部分层级比较重要的应用可以不受限制,但总的来说,androido将严格限制后台进程对手机资源的调用。

画中画
androido中,谷歌更加强调多任务处理场景中的流畅性,在i/o2017上,谷歌演示了增强功能的画中画模式,为用户带来不同应用程序间的流畅操作体验。例如用户可以在netflix上观看电影,支持将电影屏幕缩小成悬浮窗口,在看电影的同时进行查看日历、搜索信息等其他工作,这和普通的画中画分屏模式并不相同。这一功能的唤醒只需要点击home键按钮,如果想结束这一模式,可以将小窗口滑下来以终止。
Android快速了解历史操作系统版本(开发学习攻略)

运行时权限策略变化
在 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

刘海设计: 随着刘海屏的安卓手机越来越多,在google看来这种设计肯定会流行开来,所以退出最核心的变化,就是会支持类似iphone
x的流海屏设计,能更好的优化内容和布局,让那个系统和应用充分利用整个屏幕,尤其是刘海左右两侧的角落 黑白模式切换:
android黑夜模式在6.0的时候出现过,但是谷歌并没有引用正式版,这对于续航敏感和有关灯玩手机习惯的用户来说,新功能无疑更加受欢迎 其他性能优化:google改进了助手可集成于应用之中、优化电池续航、支持多屏和可折叠屏幕等等 加入长截图:
可以滚动截屏,用户可以把全部内容截取到一张图中
改善自带文件管理器:
5.0以下原生安卓系统没有文件管理器,国产的手机都是更改过的 加入护眼模式:
早期,手机只有“夜间模式”,仅是单纯地把画面调成了暗色调。现在,不少手机都有了“护眼模式”,比如ios的“night shift”和厂商定制安卓的护眼模式。然而原生安卓就没有这个功能。