【Arch】Android系统简介
文章目录
- 0、Google IO
- 1、Android系统发展历程
- 2、Android系统特点
- 3、Android系统框架
0、Google IO
下面是Google IO的logo(Innovation in the Open)(Input/Output)(1/0)——
Google IO是由Google举办的网络开发者大会,旨在讨论用Google和开放网络技术去开发网络应用。Google IO大会从2008年开始,在美国加州旧金山每年举行一次。
2008/1
Google Web Toolkit 1.5,Java 1.5,Google App Engine。
2009/2
Android,App Engine,Chrome,Google Web Toolkit,OpenSocial,Google AJAX,Google Wave。
2010/3
Android 2.2,WebM,VP8。
2011/4
Android 3.1,Music Beta,Chrome,Google Chrome OS,Chromebook。
2012/5
Nexus 7,Nexus Q,Google Glass,Android 4.1,Android设备,应用商店,Google+。
2013/6
Youtube直播:Google+,Hangouts,Google Play,Google TV,“OK Google”,Google Maps,Chrome,Pixel。
2014/7
Android One,Android L(Dalvik>ART),Android Wear,Android Auto,Android TV,Chrome,Android Fit。
2015/8
2015年的Google IO大会重点发布了三大智能平台,包括移动端、可穿戴设备和物联网。
移动端——
全新的移动端平台Android M,即Android 6.0 Marshmallow,与Android 5.0 Lollipop相比,有六项重大的改进,具体为 App Permissions(软件权限管理)、Chrome Custom Tabs(网页体验提升)、App Links(App关联)、Android Pay(Android支付)、Fingerprint Support(指纹支持)和Power&Change(电量管理)。
可穿戴设备——
智能可穿戴设备平台Android Wear,较去年作了一定程度的更新,如手腕转动切换应用,自动识别涂鸦并转化为表情,选择常亮应用,传感器接口开放等等。
物联网——
全新的物联网系统平台Brillo,源于Android,是对Android底层的一个细化,得到了Android的全部支持,比如蓝牙、WIFI等技术,而且功耗低,安全性高,是一个端到端的应用。于此同时,还发布了通信工具Weave,它可以将云、手机和物联网Brillo三者联系起来。
除了三大平台之外,此次IO大会上Google还针对不同的领域更新了四款软件服务,包括Google Now的即点即得、Chrome的流量推断、Google Maps的离线地图,以及全新的照片应用Google Photos,可自动整理照片。软件之外还有硬件,它就是VR眼镜CardBoard,新的SDK同时支持Android和IOS,以及随之衍生出来的Jump工具,用来捕捉VR图像。
2016/9
Google Assistant,Google Home,Allo,Duo,Android N,Google Daydream,Android Wear 2.0,Instant Apps。
Android N——
运行:JIT编译器,App安装速度快,编译代码规模小。
图形:Vulkan。
加密:可加密单个文件。
升级:后台更新,下次重启后升级。
操作:分屏多任务,多任务快速切换,“清除所有”。
2017/5
2017年5月17日至19日,Google I/O 2017在美国加州山景城的海岸线圆形剧场拉开帷幕。在为期三天的年度开发者盛宴中,Google全方面的展示在软件领域的最新成果和发展动向,在Android O系统、Fuchsia系统、Chrome OS、Google Assistant、VR/AR、Google Home以及Android核心应用方面开展介绍。发布会的亮点还包括:新增Google Lens视觉识别功能、Google助手登陆iOS、Google Home可以打电话了,但是Android O无太多功能升级,下半年推独立VR,手机的未来是AI。
2018/5
新的 Android P 系统的发布是 I/O 大会第一天的重点,Google 将其称为 10 周年的新一代版本,并主打智能化。具体体现在机器学习的引入,能够了解用户的使用习惯,并预测行动。Android P 还引入了 ML Kit,这是一个新的软件开发工具包(SDK),允许开发者将大量 Google 预先建立的机器学习模型整合到他们的 Android 或 iOS 应用中。会上,Google 发布了 Android Jetpack,并称其为下一代的 Android 组件,旨在帮助开发者加快应用开发速度。
1、Android系统发展历程
Android系统最初由Andy Rubin开发,后被Google收购。Android一词最早出现于一位法国作家的科幻小说《未来夏娃》,意指外表像人的机器,Android系统最初的几个版本就是以全球著名的机器人为名的,后因版权问题,便改为了延用至今的食物名,下面是几个主要版本及其功能的介绍。
Android 1.6 Donut:甜甜圈。主要功能包括在web和本地进行快速搜索的搜索栏,多样化的屏幕尺寸,发布app的Android Market。
Android 2.1 Eclair:松饼。主要功能包括Google地图导航,自定义Home页面,语言短信。
Android 2.2 Froyo:冻酸奶。主要功能包括语言控制,便携式热点,使用了Dalvik JIT编译器和JavaScript V8引擎带来的性能提升。
Android 2.3 Gingerbread:姜饼。主要功能包括更友好的游戏API,NFC技术,电池管理。
Android 3.0 Honeycomb:蜂巢。主要功能包括更友好的平板界面布局,系统控制栏,快捷设置方式。
Android 4.0 Ice Cream Sandwich:冰激凌三明治。主要功能包括创建app文件夹,数据使用的监控,Android Beam共享数据。
Android 4.1 Jelly Bean:果冻豆。主要功能包括Google Now,可操作通知,多账户切换。
Android 4.4 Kitkat:一种巧克力。主要功能包括“Ok Google”音控,Immersive Design,智能拨号。
Android 5.0 Lollipop:棒棒糖。主要功能包括Material Design,Multiscreen,锁屏时通知。
Android 6.0 Marshmallow:棉花糖。
Android 7.0 Naugat:牛轧糖。
Android 8.0 Oreo:奥利奥。
Android 9.0 Pie:派。
2、Android系统特点
Android是开源的,遵循Apache协议,分5层架构,SDK(四大组件为Activity/Broadcast Receiver/Content Provider/Service)强大,UI不断改进,生态系统逐步完善,但是,系统运行速度有待改善,现在许多厂商都选择其作为基础平台来开发自己的产品,市场占有率很高,却没有较好的盈利模式,特别是越来越多的手机厂商,产品类型迥异,可以说是雨后春笋,但又是良莠不齐的,同时给产品兼容和屏幕适配带来了一定的困难。
3、Android系统框架
Android系统整体上分为五层:Linux Kernel(GPL)、HAL、Native Libraries&Android Runtime、Android Framework、Applications。如下图所示——
Linux内核层——
Android的底层是基于Linux操作系统的,那么在硬件层面的驱动开发就可以直接延用Linux的成果。
硬件抽象层——
既然有了Linux内核层与硬件打交道,为什么还要有个硬件抽象层呢?一开始是没有HAL的,HAL是在2008年的Google IO大会上引入的,旨在进一步降低Android系统与硬件的耦合度。Linux遵循的是GPL协议,意味着其下的所有驱动都应该是开源的,而Android遵循的是Apache协议,有些东西可能不想开源出来,HAL就正好规避了这个问题。
系统运行库层——
这一层是一些基础库,多数由C/C++实现,包括了不少开源项目,如WebKit、OpenGL、SQLite等,项目之多,Google开发了基于git的repo版本管理工具,用repo来管理整个工程。
应用程序框架层——
这一层是个Java库,为上层应用程序提供了API接口,而且还包括了一些系统级服务进程。
应用程序层——
这一层是直接面向用户的应用程序。
【Arch】Android系统简介相关推荐
- 【译】Android系统简介—— Activity
续上一篇,继续介绍Android系统.上一篇: [译]Android系统简介 本文主要介绍构建Android应用的一些主要概念: Activity Activity是应用程序中一个单独的有UI的页面( ...
- Android系统简介(上、中、下):历史渊源
上个月,看到微信的一系列文章,讲到Linux的鼻祖-李纳斯的传记<Just for Fun>, 其人神乎其能, 其人生过程非常有趣,值得每个程序员细细品味. 而实际上,对我而已,虽然做软件 ...
- Android 系统简介
简介 Android 是什么? Android 是一款操作系统. Android 是 IT 巨头 Google 公司推出的一款手机系统,是基于Linux内核(不包含 GNU 组件)的自由及开放 ...
- Android系统简介
一.Android系统的前世今生 目前全球智能手机最主要的两大阵营是Android和IOS,Android和IOS是移动操作系统的名称,它们背后的公司是谷歌和苹果,所以有时候也叫做谷歌系统和苹果系统. ...
- mDNS移植Android系统简介
最近有个客户,需要在他的机顶盒上支持Airplay, 其机顶盒系统是Android4.0.4, 此版本系统没有mDNS(需要Android4.1+)及MediaCodec接口 (需要Android4. ...
- Android系统基础与常用布局
Android学习笔记 一.Android系统简介 1.1 体系架构 采用了分层的架构,如下图 1.1.2 Linux内核 Android 平台的基础是 Linux 内核.例如,Android R ...
- android mdns开发实例,Android开发_mDNS移植Android系统方案介绍
mDNS移植Android系统简介.最近有个客户,需要在他的机顶盒上支持Airplay, 其机顶盒系统是Android4.0.4, 此版本系统没有mDNS(需要Android4.1+)及MediaCo ...
- 【Android 系统开发】 Android 系统启动流程简介
作者 : 万境绝尘 (octopus_truth@163.com) 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/3889548 ...
- Android 系统(4)---Android HAL层与Linux Kernel层驱动开发简介
Android HAL层与Linux Kernel层驱动开发简介 近日稍微对Android中的驱动开发做了一些简要的了解,稍稍理清了一下Android驱动开发的套路,总结一下笔记. HAL:Hardw ...
最新文章
- Go 学习笔记(57)— Go 第三方库之 amqp (RabbitMQ 生产者、消费者整个流程)
- 利用人类神经网络进行蛋白质设计
- Java取模函数,再不刷题就晚了!
- 从超链接调用ActionScript
- Kafka(1)-概述
- Andrew Ng机器学习课程6
- Python中Numpy包的学习
- 调整png的不透明度_悄悄告诉你:11个高质量PNG素材来源,再也不用抠图了~
- 约瑟夫(环)问题(Josephu)(单向环形链表)
- 20155220 2016-2017-2《Java程序设计》第五周学习总结
- [转].net中Cache的应用
- Tapestry 5 资料
- Linux/windows下java调用lingo
- 新买的电脑 Windows10/Windows11即将过期怎么办
- 织梦dedecms蓝色大学院校学校网站模板(自适应手机移动端)
- 软件测试技术什么是分支覆盖,分支覆盖率测试是什么?
- Unity3D基础语言,引擎实战入门教程
- 【区块链108将】千方基金点付大头:投资区块链,不要让过往认知限制你的想象
- xcode编译错误:The Legacy Build System will be removed in a future release.
- 【React】入门实例
热门文章
- 如何修改windows某类后缀文件的图标和系统文件夹的图标
- [附源码]java毕业设计病历管理系统设计
- 烟雾检测电路c语言程序,基于51单片机火灾报警器系统烟雾检测温度检测设计(原理图+程序仿真+论文)...
- request + bs4 爬取网易云音乐热门评论
- Gitlab-runner(一)安装
- Cocos2dx游戏开发素材/学习网站分享
- windows系统中nginx图片服务器,windows nginx 图片服务器
- 网咖倒闭低价清机子?擦擦眼睛再做决定
- C语言 入门到精通100题
- 记录下我磕磕碰碰的三个月找工作经历,完整PDF