Android教程-移动端-IT技术博客
我的位置:首页 > 移动端>Android教程

安卓是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。

2014第一季度Android平台已占所有移动广告流量来源的42.8%,首度超越iOS。但运营收入不及iOS。


发展历程

2003年10月,Andy Rubin等人创建Android公司,并组建Android团队。

2005年8月17日,Google低调收购了成立仅22个月的高科技企业Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。

2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,该组织由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成,并与84家硬件制造商、软件开发商及电信营运商组成开放手持设备联盟(Open Handset Alliance)来共同研发改良Android系统,这一联盟将支持谷歌发布的手机操作系统以及应用软件,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。

2008年,在GoogleI/O大会上,谷歌提出了AndroidHAL架构图,在同年8月18号,Android获得了美国联邦通信委员会(FCC)的批准,在2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统最早的版本。

2009年4月,谷歌正式推出了Android 1.5这款手机,从Android 1.5版本开始,谷歌开始将Android的版本以甜品的名字命名,Android 1.5命名为Cupcake(纸杯蛋糕)。该系统与Android 1.0相比有了很大的改进。

2009年9月,谷歌发布了Android 1.6的正式版,并且推出了搭载Android 1.6正式版的手机HTC Hero(G3),凭借着出色的外观设计以及全新的Android 1.6操作系统,HTC Hero(G3)成为当时全球最受欢迎的手机。Android 1.6也有一个有趣的甜品名称,它被称为Donut(甜甜圈)。

2010年2月,Linux内核开发者Greg Kroah-Hartman将Android的驱动程序从Linux内核“状态树”(“staging tree”)上除去,从此,Android与Linux开发主流将分道扬镳。在同年5月份,谷歌正式发布了Android 2.2操作系统。谷歌将Android 2.2操作系统命名为Froyo,翻译完名为冻酸奶。

2010年10月,谷歌宣布Android系统达到了第一个里程碑,即电子市场上获得官方数字认证的Android应用数量已经达到了10万个,Android系统的应用增长非常迅速。在2010年12月,谷歌正式发布了Android 2.3操作系统Gingerbread (姜饼)。

2011年1月,谷歌称每日的Android设备新用户数量达到了30万部,到2011年7月,这个数字增长到55万部,而Android系统设备的用户总数达到了1.35亿,Android系统已经成为智能手机领域占有量最高的系统。

2011年8月2日,Android手机已占据全球智能机市场48%的份额,并在亚太地区市场占据统治地位,终结了Symbian(塞班系统)的霸主地位,跃居全球第一。

2011年9月,Android系统的应用数目已经达到了48万,而在智能手机市场,Android系统的占有率已经达到了43%。继续在排在移动操作系统首位。谷歌将会发布全新的Android 4.0操作系统,这款系统被谷歌命名为Ice Cream Sandwich(冰激凌三明治)。

2012年1月6日,谷歌Android Market已有10万开发者推出超过40万活跃的应用,大多数的应用程序为免费。Android Market应用程序商店目录在新年首周周末突破40万基准,距离突破30万应用仅4个月。在2011年早些时候,Android Market从20万增加到30万应用也花了四个月。

2013年11月1日,Android4.4正式发布,从具体功能上讲,Android4.4提供了各种实用小功能,新的Android系统更智能,添加更多的Emoji表情图案,UI的改进也更现代,如全新的HelloiOS7半透明效果。

2015年,网络安全公司Zimperium研究人员警告,安卓(Android)存在“致命”安全漏洞,黑客发送一封彩信便能在用户毫不知情的情况下完全控制手机。

2018年10月,谷歌表示,将于2018年12月6日停止Android系统中的Nearby Notifications(附近通知)服务,因为Android用户收到太多的附近商家推销信息的垃圾邮件。

2020年3月,谷歌的Android安全公告中提到,新更新已经提供了CVE-2020-0069补丁来解决针对联发科芯片的一个严重安全漏洞。



章节列表


1.1 背景相关与系统架构分析

1.2 开发环境搭建

1.2.1 使用Eclipse + ADT + SDK开发Android APP

1.2.2 使用Android Studio开发Android APP

1.3 SDK更新不了问题解决

1.4 Genymotion模拟器安装

1.5.1 Git使用教程之本地仓库的基本操作

1.5.2 Git之使用GitHub搭建远程仓库

1.6 .9(九妹)图片怎么玩

1.7 界面原型设计

1.8 工程相关解析(各种文件,资源访问)

1.9 Android程序签名打包

1.11 反编译APK获取代码&资源

2.1 View与ViewGroup的概念

2.2.1 LinearLayout(线性布局)

2.2.2 RelativeLayout(相对布局)

2.2.3 TableLayout(表格布局)

2.2.4 FrameLayout(帧布局)

2.2.5 GridLayout(网格布局)

2.2.6 AbsoluteLayout(绝对布局)

2.3.1 TextView(文本框)详解

2.3.2 EditText(输入框)详解

2.3.3 Button(按钮)与ImageButton(图像按钮)

2.3.4 ImageView(图像视图)

2.3.5.RadioButton(单选按钮)&Checkbox(复选框)

2.3.6 开关按钮ToggleButton和开关Switch

2.3.7 ProgressBar(进度条)

2.3.8 SeekBar(拖动条)

2.3.9 RatingBar(星级评分条)

2.4.1 ScrollView(滚动条)

2.4.2 Date & Time组件(上)

2.4.3 Date & Time组件(下)

2.4.4 Adapter基础讲解

2.4.5 ListView简单实用

2.4.6 BaseAdapter优化

2.4.7ListView的焦点问题

2.4.8 ListView之checkbox错位问题解决

2.4.9 ListView的数据更新问题

2.5.0 构建一个可复用的自定义BaseAdapter

2.5.1 ListView Item多布局的实现

2.5.2 GridView(网格视图)的基本使用

2.5.3 Spinner(列表选项框)的基本使用

2.5.4 AutoCompleteTextView(自动完成文本框)的基本使用

2.5.5 ExpandableListView(可折叠列表)的基本使用

2.5.6 ViewFlipper(翻转视图)的基本使用

2.5.7 Toast(吐司)的基本使用

2.5.8 Notification(状态栏通知)详解

2.5.9 AlertDialog(对话框)详解

2.6.0 其他几种常用对话框基本使用

2.6.1 PopupWindow(悬浮框)的基本使用

2.6.2 菜单(Menu)

2.6.3 ViewPager的简单使用

2.6.4 DrawerLayout(官方侧滑菜单)的简单使用

3.1.1 基于监听的事件处理机制

3.2 基于回调的事件处理机制

3.3 Handler消息传递机制浅析

3.4 TouchListener PK OnTouchEvent + 多点触碰

3.5 监听EditText的内容变化

3.6 响应系统设置的事件(Configuration类)

3.7 AnsyncTask异步任务

3.8 Gestures(手势)

4.1.1 Activity初学乍练

4.1.2 Activity初窥门径

4.1.3 Activity登堂入室

4.2.1 Service初涉

4.2.2 Service进阶

4.2.3 Service精通

4.3.1 BroadcastReceiver牛刀小试

4.3.2 BroadcastReceiver庖丁解牛

4.4.1 ContentProvider初探

4.4.2 ContentProvider再探——Document Provider

4.5.1 Intent的基本使用

4.5.2 Intent之复杂数据的传递

5.1 Fragment基本概述

5.2.1 Fragment实例精讲——底部导航栏的实现(方法1)

5.2.2 Fragment实例精讲——底部导航栏的实现(方法2)

5.2.3 Fragment实例精讲——底部导航栏的实现(方法3)

5.2.4 Fragment实例精讲——底部导航栏+ViewPager滑动切换页面

5.2.5 Fragment实例精讲——新闻(购物)类App列表Fragment的简单实现

6.1 数据存储与访问之——文件存储读写

6.2 数据存储与访问之——SharedPreferences保存用户偏好参数

6.3.1 数据存储与访问之——初见SQLite数据库

6.3.2 数据存储与访问之——又见SQLite数据库

7.1.1 Android网络编程要学的东西与Http协议学习

7.1.2 Android Http请求头与响应头的学习

7.1.3 Android HTTP请求方式:HttpURLConnection

7.1.4 Android HTTP请求方式:HttpClient

7.2.1 Android XML数据解析

7.2.2 Android JSON数据解析

7.3.1 Android 文件上传

7.3.2 Android 文件下载(1)

7.3.3 Android 文件下载(2)

7.5.1 WebView(网页视图)基本用法

7.5.2 WebView和JavaScrip交互基础

7.5.3 Android 4.4后WebView的一些注意事项

7.5.4 WebView文件下载

7.5.5 WebView缓存问题

7.5.6 WebView处理网页返回的错误码信息

7.6.1 Socket学习网络基础准备

7.6.2 基于TCP协议的Socket通信(1)

7.6.3 基于TCP协议的Socket通信(2)

7.6.4 基于UDP协议的Socket通信

8.1.1 Android中的13种Drawable小结 Part 1

8.1.2 Android中的13种Drawable小结 Part 2

8.1.3 Android中的13种Drawable小结 Part 3

8.2.1 Bitmap(位图)全解析 Part 1

8.2.2 Bitmap引起的OOM问题

8.3.1 三个绘图工具类详解

8.3.2 绘图类实战示例

8.3.3 Paint API之—— MaskFilter(面具)

8.3.4 Paint API之—— Xfermode与PorterDuff详解(一)

8.3.5 Paint API之—— Xfermode与PorterDuff详解(二)

8.3.6 Paint API之—— Xfermode与PorterDuff详解(三)

8.3.7 Paint API之—— Xfermode与PorterDuff详解(四)

8.3.8 Paint API之—— Xfermode与PorterDuff详解(五)

8.3.9 Paint API之—— ColorFilter(颜色过滤器)(1/3)

8.3.10 Paint API之—— ColorFilter(颜色过滤器)(2-3)

8.3.11 Paint API之—— ColorFilter(颜色过滤器)(3-3)

8.3.12 Paint API之—— PathEffect(路径效果)

8.3.13 Paint API之—— Shader(图像渲染)

8.3.14 Paint几个枚举/常量值以及ShadowLayer阴影效果

8.3.15 Paint API之——Typeface(字型)

8.3.16 Canvas API详解(Part 1)

8.3.17 Canvas API详解(Part 2)剪切方法合集

8.3.18 Canvas API详解(Part 3)Matrix和drawBitmapMash

8.4.1 Android动画合集之帧动画

8.4.2 Android动画合集之补间动画

8.4.3 Android动画合集之属性动画-初见