随着移动设备的不断普及和发展,相关软件的开发也越来越受到人们的关注,其中要提及的就是Android开发。本系列博客主要为大家介绍Android的开发,可能会有人问:现在互联网上已经有很多的Android的技术博客,有很多博客也分享了很多的技术,你为什么还要再进行编写Android的开发博客呢?我写这个博客的主要原因是虽然现在有很多的博客是分享Android技术的,但是很少有博客是系统的介绍这些技术的,所以如果一个初学者去学习Android这些技术的话,那就非常困难了,所以我才写了这个博客。还有一个原因是我的文章都是以实战为目的的,细心的读者可能已经发现,在文章的标题有“Android实战开发”的字样,其中“实战开发”是非常重要的,很多初入门的读者在学习时可能只是把这篇文章给看了,而没有真正的去实践、去练习,所以我建议读者看完我的博客以后,如果你没有掌握这篇博客中的内容的话,就抓紧时间联系,如果有不会或者出错解决不掉的问题,可以给我留言,我会尽快的给予回复的。
今天我们主要研究以下的几个问题:
1、3G技术
2、Android简介和发展
1、3G技术
首先我们来看第一个问题:3G技术。所谓的3G就是第三代移动通信技术(3rd-generation,3G),是指支持高速数据传输的蜂窝移动通讯技术。3G服务能够同时传送声音及数据信息,速率一般在几百kbps以上。目前3G存在四种标准:CDMA2000,WCDMA,TD-SCDMA,WiMAX。其中,
中国联通使用的是WCDMA(世界上大部分的3G网络使用的都是此种标准);
中国电信使用的是CDMA2000(日、韩和北美使用);
中国移动使用的是具有自主知识产权的TD-SCDMA(只有中国才使用);
对于3G的介绍在百度百科和*还有很多有兴趣的读者可以去查看:
百度百科:http://baike.baidu.com/view/808.htm?fromId=362852
*:http://zh.wikipedia.org/wiki/3G
2、什么是Android
Android是一种基于Linux的*及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,*地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2012年11月数据显示,Android占据全球智能手机操作系统市场76%的份额,中国市场占有率为90%。
目前很多运营商都加入了Android的阵营,其中包括中国移动、中国联通、中国电信、华为、联想等大企业,并且还有很多的人依据Android进行创业,从这里我们可以看出Android给我们这一代提供了一个很好的平台,我们可以做自己喜欢的事情,以极低的成本,但前提是要我们要有技术。
3、Android的升级
Android保持着每半年发行一个新版本的步伐在逐步升级着,分别定在每年的夏天和年终。Android在正式发行之前,有两个内部的测试版本,分别命名为:阿童木(AndroidBeta)、发条机器人(Android 1.0)。后来由于涉及到版权的问题,谷歌将其命名规则变更为用甜点作为它们系统的代号的命名方法。
纸杯蛋糕(Android 1.5),甜甜圈(Android 1.6),松饼(Android 2.0/2.1),冻酸奶(Android 2.2),姜饼(Android 2.3),蜂巢(Android 3.0),冰激凌三明治(Android 4.0),果冻豆(Jelly Bean,Android4.1和Android 4.2)
4、Android体系结构
Android的体系结构图如下:
从上图中,我们可以看出,Android平台主要包括Applications、Application Framework、Libraries、Android Runtime和Linux Kernel几部分。其中:
Applications(应用程序):Android提供了一组应用程序,包括Email客户端、SMS程序、日历、地图、浏览器、通讯录等,这部分程序均使用Java语言编写。我们这个实战开发系列的重点也在应用程序的开发。
Application Framework(应用程序框架):无论是Android提供的应用程序还是开发人员自己编写的应用程序,都需要使用Application Framework。通过使用Application Framework,不仅可以大幅度简化代码的编写,而且可以提高程序的复用性。
Libraries(库):Android提供了一组C/C++库,他们为平台的不同组件所使用。开发人员通过Application Framework来使用这些库所提供的不同功能。
Android Runtime(Android运行时):Android运行时包括核心库和Dalvik虚拟机两部分。核心库中提供了Java语言核心库中包含的大部分功能,虚拟机负责运行程序。Dalvik虚拟机专门针对移动设备进行编写,不仅效率更高,而且占用更少的内存。
Linux Kernel(Linux内核):Android平台使用Linux 2.6版内核提供的核心系统服务,包括安全性、内存管理、进程管理等。
结束语:今天我们主要是对3G技术和Android有一个大概的了解,内容相对来说比较枯燥,下次我们就要进入我们的实战部分了,下次我们主要介绍的是Android开发环境的搭建,让初学者看完之后就可以搭建自己的Android的开发环境。
【Android实战开发】3G技术和Android发展简介的更多相关文章
-
浅谈Android移动开发程序员的职业发展之路
现在几乎每个it公司都在开发移动产品,我最早知道Android还是在09年成都某学院上大学的时候,从新闻上知道有这么一家公司,创始人安迪·鲁宾很有名,但安卓到底是做什么的,我并没有关注. 到2010年 ...
-
Android NFC开发(二)——Android世界里的NFC所具备的条件以及使用方法
Android NFC开发(二)--Android世界里的NFC所具备的条件以及使用方法 NFC的应用比较广泛,而且知识面也是比较广的,所以就多啰嗦了几句,我还还是得跟着官方文档:http://dev ...
-
uni-app&;H5&;Android混合开发三 || uni-app调用Android原生方法的三种方式
前言: 关于H5的调用Android原生方法的方式有很多,在该片文章中我主要简单介绍三种与Android原生方法交互的方式. 一.H5+方法调用android原生方法 H5+ Android开发规范官 ...
-
使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字“Hello Android”,并将应用程序的名称更改为“FirstApp”。
需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字"Hello Android",并将应用程序的名称更改为"Firs ...
-
使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行
需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行 实现步骤: 打开 Android Studio,创建一个 Andr ...
-
Android实战开发租赁管理软件(适配UI,数据的存储,多线程下载)课程分享
亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系. 课程内容简单介绍 我们软件是基于移动设备的.所以我们必定的选择了安卓作为我们的开发工具.课 ...
-
[Android游戏开发]八款开源 Android 游戏引擎 (巨好的资源)
初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道该从何处入手,每当遇到自己无法解决的难题时,又往往会一边羡慕于 iPhone下有诸如Cocos2d-iphone之类的免费游戏引 ...
-
写给Android App开发人员看的Android底层知识(2)
(五)AMS 如果站在四大组件的角度来看,AMS就是Binder中的Server. AMS全称是ActivityManagerService,看字面意思是管理Activity的,但其实四大组件都归它管 ...
-
【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)
. 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...
随机推荐
-
AE,按照属性值关系选择要素
if(axMapControl2.LayerCount<=0) { MessageBox.Show("请加载图层后使用该功能","系统提示",Messag ...
-
nyoj_t218(Dinner)
描述 Little A is one member of ACM team. He had just won the gold in World Final. To celebrate, he dec ...
-
Git 的简单使用
一直在使用Git,仅限于简单的使用,但还是记不住几个简单.在这边总结一下,加深印象,也方便查找. 安装Git 平常主要在windows和ubuntu上工作,就以windows为例,Linux和Mac平 ...
-
【 UVALive - 5095】Transportation(费用流)
Description There are N cities, and M directed roads connecting them. Now you want to transport K un ...
-
Android高级编程笔记(四)深入探讨Activity(转)
在应用程序中至少包含一个用来处理应用程序的主UI功能的主界面屏幕.这个主界面一般由多个Fragment组成,并由一组次要Activity支持.要在屏幕之间切换,就必须要启动一个新的Activity.一 ...
-
Sonya and Problem Wihtout a Legend
Sonya and Problem Wihtout a Legend Sonya was unable to think of a story for this problem, so here co ...
-
Flink消费Kafka数据并把实时计算的结果导入到Redis
1. 完成的场景 在很多大数据场景下,要求数据形成数据流的形式进行计算和存储.上篇博客介绍了Flink消费Kafka数据实现Wordcount计算,这篇博客需要完成的是将实时计算的结果写到redis. ...
-
Spark集群搭建【Spark+Hadoop+Scala+Zookeeper】
1.安装Linux 需要:3台CentOS7虚拟机 IP:192.168.245.130,192.168.245.131,192.168.245.132(类似,尽量保持连续,方便记忆) 注意: 3台虚 ...
-
ASP.NET MVC学习笔记(二)笔记
接下来我们一起了解ASP.NET MVC的最重要的核心技术,了解ASP.NET MVC的开发框架,生命周期,技术细节. 一.Routing与ASP.NET MVC生命周期 1.Routing——网址路 ...
-
CSS的再一次深入(更新中&#183;&#183;&#183;)
全面我们学了6个选择器,今天再来学习两个选择器,分别是通配符选择器和并集选择器: 1.通配符选择器: *{ } 表示body里所有的标签都被选中 2.并集选择器: 选中的标签之间用逗号隔开,表示这几个 ...