随着移动设备的不断普及和发展,相关软件的开发也越来越受到人们的关注,其中要提及的就是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. Hibernate三 关联关系

    Hibernate的关联映射 客观世界中很少有对象是独立存在的,比如我们可以通过某个老师获取该老师教的所有学生,我们也可以通过某个学生获得教他的对应的老师,实体之间的互相访问就是关联关系.在Hiber ...

  2. STRUCTS 2 LABLE

    {LJ?Dragon}[标题]structs2标签的作用 {LJ?Dragon}[Diary]2017年,愉快的开始:离别不一定总伤感,虽然只是安慰着自己......... 问与答 问题 在Strut ...

  3. Open-source Project官方地址

    非常遗憾因为这篇博文是专门搜集各个开源项目的各种官方连接地址的,所以链接较多,csdn不同意保存. 请点击这里下载. 因为我的积分不多了,所以这个文档须要一个积分..应该不多吧...确实没有积分的童鞋 ...

  4. Android RadioGroup Fragment Viewpager FragmentPagerAdapter 去哪网Fragment嵌套

    RadioGroup中的各个选择器 <selector xmlns:android="http://schemas.android.com/apk/res/android"& ...

  5. ios使用openUrl进行应用跳转

    1.拨打电话: [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://68979"]]; ...

  6. 寻找大学目标及行动步骤——记ITAEM团队第二期宣讲会(2014.05.14)

    ·昨晚8:00-9:40.在 钟海楼03029 ,进行了ITAEM团队第二期宣讲会(第一期见第一期宣讲会总结).来參加的主要是大一学生.以信院为主.也有法学院.文学院的同学. 在宣讲会中,大家都比較积 ...

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

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

  8. spring mvc DispatcherServlet详解前传---HttpServletBean类

    从上章里我们已经看到: DispatcherServlet extends FrameworkServlet FrameworkServlet extends HttpServletBean impl ...

  9. java之迭代器

    迭代这个名词对于熟悉Java的人来说绝对不陌生.我们常常使用JDK提供的迭代接口进行java collection的遍历: Iterator it = list.iterator();while(it ...

  10. 关于#include后面<>和" "的区别

    1.以尖括号制定头文件,如下所示: #include <stdio.h> 用尖括号来制定文件时,预处理器是以特定的方式来寻找文件,一般是环境中或编译器命令行指定的某种寻找路径.这种设置寻找 ...