随着移动设备的不断普及和发展,相关软件的开发也越来越受到人们的关注,其中要提及的就是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发展简介的更多相关文章

  1. 浅谈Android移动开发程序员的职业发展之路

    现在几乎每个it公司都在开发移动产品,我最早知道Android还是在09年成都某学院上大学的时候,从新闻上知道有这么一家公司,创始人安迪·鲁宾很有名,但安卓到底是做什么的,我并没有关注. 到2010年 ...

  2. Android NFC开发(二)——Android世界里的NFC所具备的条件以及使用方法

    Android NFC开发(二)--Android世界里的NFC所具备的条件以及使用方法 NFC的应用比较广泛,而且知识面也是比较广的,所以就多啰嗦了几句,我还还是得跟着官方文档:http://dev ...

  3. uni-app&H5&Android混合开发三 || uni-app调用Android原生方法的三种方式

    前言: 关于H5的调用Android原生方法的方式有很多,在该片文章中我主要简单介绍三种与Android原生方法交互的方式. 一.H5+方法调用android原生方法 H5+ Android开发规范官 ...

  4. 使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字“Hello Android”,并将应用程序的名称更改为“FirstApp”。

    需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字"Hello Android",并将应用程序的名称更改为"Firs ...

  5. 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行

    需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行 实现步骤: 打开 Android Studio,创建一个 Andr ...

  6. Android实战开发租赁管理软件(适配UI,数据的存储,多线程下载)课程分享

    亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系. 课程内容简单介绍 我们软件是基于移动设备的.所以我们必定的选择了安卓作为我们的开发工具.课 ...

  7. [Android游戏开发]八款开源 Android 游戏引擎 (巨好的资源)

    初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道该从何处入手,每当遇到自己无法解决的难题时,又往往会一边羡慕于 iPhone下有诸如Cocos2d-iphone之类的免费游戏引 ...

  8. 写给Android App开发人员看的Android底层知识(2)

    (五)AMS 如果站在四大组件的角度来看,AMS就是Binder中的Server. AMS全称是ActivityManagerService,看字面意思是管理Activity的,但其实四大组件都归它管 ...

  9. 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)

    . 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...

随机推荐

  1. Python读写文件模式

    1.r 打开只读文件,该文件必须存在. 2.r+ 打开可读写的文件,该文件必须存在. 3.w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失.若文件不存在则建立该文件. 4.w+ 打开可 ...

  2. JavaBean的boolean isXXX反序列化问题

    JavaBean规范中规定boolean的getter/setter 为isXXX/setXXX,包装类Boolean的getter/setter 为getXXX/setXXX,其中XXX为变量名(I ...

  3. tomcat绿色版及安装版修改内存大小的方法

    1.对于安装版,比较方便了,直接运行tomcat6w.exe,选择Java选项卡, 在这里,可以设置初始化内存,最大内存,线程的内存大小. 初始化内存:如果机器的内存足够大,可以直接将初始化内存设置为 ...

  4. 南阳理工ACM-OJ 分数加减法 最大公约数的使用

    http://acm.nyist.net/JudgeOnline/problem.php?pid=111 简单模拟: #include <iostream> #include <st ...

  5. [PWA] 7. First Cache when installed

    If you want your application works offline or lie-wifi. You need to use cache. API: Create Caches: c ...

  6. C++高精度运算类bign (重载操作符)

    大数据操作,有例如以下问题: 计算:456789135612326542132123+14875231656511323132 456789135612326542132123*14875231656 ...

  7. Valgrind 安装与使用

    调不尽的内存泄漏,用不完的Valgrind Valgrind 安装 1. 到www.valgrind.org下载最新版valgrind-3.2.3.tar.bz2 2. 解压安装包:tar –jxvf ...

  8. discuz, 使用同一数据库, 只是换个环境, 数据就不一样了

    如题, 本以为是由于某些冲突导致, 细查之后, 发现是开了缓存了, 把缓存关掉或是在后台清理缓存就OK了 后台清理缓存, 全局--性能优化--内存优化  清理缓存 关闭缓存, 修改全局配置文件, co ...

  9. shell脚本中echo显示内容带颜色

    转自:http://www.cnblogs.com/lr-ting/archive/2013/02/28/2936792.html shell脚本中echo显示内容带颜色显示,echo显示带颜色,需要 ...

  10. PHP 网页爬虫

    只能爬一个页面 <?php function get_urls($url){ $url_array=array(); $the_first_content=file_get_contents($ ...