Android参考资料.docx

上传人:b****6 文档编号:8468545 上传时间:2023-01-31 格式:DOCX 页数:36 大小:4.57MB
下载 相关 举报
Android参考资料.docx_第1页
第1页 / 共36页
Android参考资料.docx_第2页
第2页 / 共36页
Android参考资料.docx_第3页
第3页 / 共36页
Android参考资料.docx_第4页
第4页 / 共36页
Android参考资料.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

Android参考资料.docx

《Android参考资料.docx》由会员分享,可在线阅读,更多相关《Android参考资料.docx(36页珍藏版)》请在冰豆网上搜索。

Android参考资料.docx

Android参考资料

1Android操作系统

本章目标:

1.掌握Android操作系统的基本概念。

2.掌握Android操作系统特征,系统架构。

3.了解Android操作应用前景和目前市面上其他主流智能手机操作系统。

1.1Anroid系统介绍

GoogleAndroid系统Logo中文注册名”安致”

Android一词的本义指“机器人”,是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,是首个为移动终端打造的真正开放和完整的操作系统。

使用Android系统的Google手机:

Google G1

2008年9月23日,美国运营商T-MobileUSA在纽约正式发布第一款Google手机--T-MobileG1。

该款手机为台湾宏达电代工制造,是世界上第一部使用Android操作系统的手机,支持WCDMA/HSPA网络,理论下载速率7.2Mbps,并支持Wi-Fi。

1.2Anroid历史

Google公司于2007年11月宣布组建一个全球性的联盟组织,这一联盟将会支持Google公司发布的手机操作系统或者应用软件,共同开发名为Android的开放源代码的移动操作系统,这个联盟称为“开放手机联盟”,其英文名称为:

OpenHandsetAlliance。

这个联盟成员数量已经达到了几十家,除了前面提到的Google公司外,还包括手机制造商、手机芯片厂商和移动运营商几类。

开放手机联盟成员图  

 

一、手机制造商:

  台湾宏达国际电子(HTC)(Palm等多款智能手机的代工厂)

  摩托罗拉(美国最大的手机制造商)

  韩国三星电子(仅次于诺基亚的全球第二大手机制造商)

  韩国LG电子

  中国移动(全球最大的移动运营商,截至09年9月底有7.03亿用户)

  日本KDDI(2900万用户)

  日本NTTDoCoMo(5200万用户)

  美国SprintNextel(美国第三大移动运营商,5400万用户)

  意大利电信(TelecomItalia)(意大利主要的移动运营商,3400万用户)

  西班牙Telefónica(在欧洲和拉美有1.5亿用户)

T-Mobile(德意志电信旗下公司,在美国和欧洲有1.1亿用户)

  二、半导体公司:

  AudienceCorp(声音处理器公司)

  BroadcomCorp(无线半导体主要提供商)

  英特尔(Intel)

  MarvellTechnologyGroup

  Nvidia(英伟达图形处理器公司) 

  SiRF(GPS技术提供商)

  Synaptics(手机用户界面技术)

  德州仪器(TexasInstruments)

  高通(Qualcomm)ARM

惠普HP(Hewlett-PackardDevelopmentCompany,L.P)

  三、软件公司:

  Aplix 

  Ascender

  eBay的Skype

  Esmertec

  LivingImage

  NMSCommunications 

  NoserEngineeringAG

 NuanceCommunications 

 PacketVideo

 SkyPop

 SonixNetwork

 TAT-TheAstonishingTribe

 WindRiverSystems

1.3Anroid发展

(1)开放手机联盟成立

2007年11月5日,34个联盟成员宣布成立开发手机联盟。

(2)发布第一版AndroidSDK

2007年11月12日宣布发布第一版AndroidSDK。

(3)Android开发者竞赛

2008年4月17日举办Android开发竞赛,在规定的时间内提交了1788件作品,推动了Android开发应用的速度。

(4)AndroidMarket上线

2008年8月28日,为Android平台手机提供软件分发和下载的Market正式上线,迅速积累了大量的应用。

(5)T-MobileG1上市

2008年9月23日,第一款基于Android的手机上市。

(6)Android1.0SDKrelease1发布

2008年9月23日,Android1.0R1SDK发布,标志着Android系统趋于稳定和成熟,越来越多的开发者加入Android开发阵营中。

(7)Android被宣布开发源代码

2008年10月21日,Android被宣布开放源代码。

(8)Android1.5SDK发布

2009年4月27日,AndroidSDK1.5版Cupcake(纸杯蛋糕)发布。

(9)Android1.6SDK发布

2009年9月16日,AndroidSDK1.6版Donut(甜甜圈)发布。

(10)Android2.0SDK发布

2009年10月28日,AndroidSDK2.0版Eclair(法式奶油夹心甜点)发布。

(11)Android2.1SDK发布

2010年1月12日,AndroidSDK2.1版Froyo(冻酸奶)发布。

1.4Anroid系统架构

Android系统平台架构

Android作为一个移动设备的平台,其软件层次结构包括了一个操作系统(OS),中间件(MiddleWare)和应用程序(Application)。

根据Android的软件框图,其软件层次结构自下而上分为以下几个层次:

操作系统层(OS)、各种库(Libraries)和Android运行环境(RunTime)

、应用程序框架(ApplicationFramework)、应用程序(Application)。

操作系统层(OS)

Android的Linux核心为标准的Linux2.6内核,Android更多的是一些与移动设备相关的驱动程序,主要的驱动如下所示:

1)显示驱动(DisplayDriver):

常用基于Linux的帧缓冲(FrameBuffer)驱动。

2)Flash内存驱动(FlashMemoryDriver)。

3)照相机驱动(CameraDriver):

常用基于Linux的v4l(Videofor)驱动。

4)音频驱动(AudioDriver):

常用基于ALSA(AdvancedLinuxSoundArchitecture)驱动。

5)WiFi驱动(CameraDriver):

基于IEEE802.11标准的驱动程序。

6)键盘驱动(KeyBoardDriver)。

7)蓝牙驱动(BluetoothDriver)。

8)BinderIPC驱动:

提供进程间通讯的功能。

9)PowerManagement(能源管理)。

Libraries和Android运行环境(RunTime)

Android的本层次分成两个部分一个是各种库,另一个是Android运行环境。

本层的内容大多是使用C++实现的。

在其中,各种库包括:

1)C库:

C语言的标准库,是通过Linux的系统调用来实现。

2)多媒体框架(MediaFrameword):

是Android多媒体的核心部分。

3)SGL:

2D图像引擎。

4)SSL:

位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。

5)OpenGLES1.0:

提供了对3D的支持。

6)界面管理工具(SurfaceManagement):

提供了对管理显示子系统等功能。

7)SQLite:

通用的嵌入式数据库

8)WebKit:

网络浏览器的核心

9)FreeType:

位图和矢量字体的功能。

应用程序框架(ApplicationFramework)

 Android的应用程序框架为应用程序层的开发者提供APIs,它实际上是一个应用程序的框架。

由于上层的应用程序是以JAVA构建的,因此本层次提供的首先包含了UI程序中所需要的各种控件,一个Andoid的应用程序可以利用应用程序框架中的以下几个部分:

Activity、BroadcastIntentReceiver、Service、ContentProvider。

应用程序(Application)

 Android的应用程序主要是用户界面(UserInterface)方面的,通常以JAVA程序编写,其中还可以包含各种资源文件(放置在res目录中)JAVA程序及相关资源经过编译后,将生成一个APK包。

Android本身提供了主屏幕(Home),联系人(Contact),电话(Phone),浏览器(Browers)等众多的核心应用。

同时应用程序的开发者还可以使用应用程序框架层的API实现自己的程序。

这也是Android开源的巨大潜力的体现。

1.5Android系统应用

开发基于Android平台应用

游戏类应用

工具软件类应用

创意软件类应用

IM软件类应用

参加Android开发大赛

得到更多人的认可和尊重

Google花大价钱来召开Android开发者大赛,第一届大赛已经落幕,期间我们看到了很多优秀的作品,当然也许我们更关注的是这个比赛的最大赢家,BiginJapan,这个团队开发了10多个应用程序,最终,他们的GoCart赢了这次比赛的冠军头衔以及27万美元。

AndroidMarket获取收益

AndroidMarket是Google为了让Android开发人员可以将应用程序上载并销售的网站,而Android手机的使用者,则可以到AndroidMarket的网站购买下载自己所需要的应用程序到手机上使用。

AndroidMarket

1.6Android前景

支持Android系统的手机

Android从出世以来就受到各界的热捧,它标志着一个新的手机时代。

另外,Android基于Linux内核,能具备PC机的性能,支持更多的接口。

这些都是未来手机的走向,所以各大手机厂商都极力推出装载Android操作系统的智能手机。

研究机构Gartner预测2012年的智能手机市场,Android将以14%的份额爬到第二的位置(2009年初Android在北美的市场份额已经达到了6.36%),超越iPhoneOS,仅次于Symbian。

Android在中国的前景十分广阔,首先是有成熟的消费者,在国内,Android社区十分红火,这些社区为android在中国的普及做了很好的推广作用。

国内厂商和运营商也纷纷加入了Android阵营,包括OPPO,中国移动,中国联通,华为通讯,联想等大企业。

1.7主流智能手机操作系统

1.7.1AppleiPhoneOS

MicrosoftWindowsMobile

NokiaSymbian

NokiaMaemo

RIMBlackBerry

1.8小结

本章介绍Android的产生和发展,Android产生背景,系统架构,开发人员可以在该平台上做的事情,以及其他主流的手机操作系统.

1.9练习

1.Android概念是什么,有什么用?

2.Android的系统架构和各层中组件的功能?

3.当前主流的手机操作系统有哪些?

2Android开发环境

本章目标:

1.掌握如何搭建Android开发环境。

2.开发调试第一个Android项目HelloWorld。

2.1Android环境搭建

2.1.1安装前准备

所需项

版本要求

说明

操作系统

WindowsXP、Vista、MacOS、Ubuntu

 选择熟悉的操作系统

软件包

AndroidSDK

下载最新版本的SDK:

IDE

Eclipse

ADT

下载Eclipse3.5:

http:

//www.eclipse.org/downloads

下载或安装ADT:

http:

//dl-

其他

JDK

下载JDK5或6:

2.1.2安装JDK

1)官方网址选择适合于自己平台(这里是Windows)的JDK下载。

安装JDK。

2)在桌面上右击“我的电脑”,依次点击【属性】>【高级】>【环境变量】将JDK的相关目录添加到Windows的PATH、CLASSPATH、JAVA_HOME环境变量中。

2.1.3安装Eclipse3.5

1)官方网址选择适合于自己平台(这里是Windows)的Eclipse下载。

直接解压就可以使用了。

2.1.4安装AndroidSDK

1)下载AndroidSDK,不需要安装,解压之后就可以使用,将其tools目录的绝对路径添加到系统的PATH路径中。

2)验证AndroidSDK安装,打开一个CMD窗口,输入android–h,如果有如下返回则表示SDK安装成功。

2.1.5安装ADT插件

1)下载ADT插件,下载完成后解压,将“features”和“plugins”目录中的文件拷贝到Eclipse的对应目录中就可以了。

2.1.6AndroidSDKHome

1)打开Eclipse,设定AndroidSDKHome

2.2第一个HelloWorld项目

2.2.1新建Android项目

1)打开Eclipse,选择File>New>Project如果Android的Eclipse的插件正确安装了,弹出的对话框里就会有一项“Android”,这一项有子项“AndroidProject”。

2.2.2填写项目信息

2)下一步需要你填写项目的详细信息.

2.2.3编程实现

2.2.4运行项目

2.3小结

本章主要介绍了Android开发环境需要的条件和搭建步骤,演示了第一个HelloWorld应用程序.

2.4练习

在本机搭建Android开发环境,并演示第一个HelloWorld应用程序。

3AndroidSDK介绍

本章目标:

1.掌握AndroidSDK组成。

2.掌握Android常用的Tools。

3.熟悉Android核心开发包和可选开发包。

3.1AndroidSDK目录结构

AndroidSDK目录结构

3.2AndroidSDKSample

LunarLander月球登陆

是一个在Android模拟器上玩的游戏。

这个游戏一个2-D的游戏在Android上工作是多么的简单。

控制非常的简单,而且游戏不是非常的复杂。

总之,对游戏开发来说是一个良好的开始。

月球登陆执行一个简单控制方案(上,下,左,右)。

NotePad写字板

允许你打开,创建并且编辑小的笔记。

写字板不是一个全功能的字符编辑器,所以不要期待是和WindowsMobile中word的竞争对手。

但是,作为一个演示工具,使用非常少的代码就能实现这个效果已经非常的棒了。

SkeletonApp框架应用

是一个基本的程序展示了几个不同的应用程序的功能。

如字体,按钮,图形和表格。

如果你想自己运行SkeletonApp,真的不应当把它排除在外,参考SkeleteApp,它会提供不少关于如何执行特定的条款。

Snake贪食蛇

这是一个小的SNAFU风格游戏,比月球登陆复杂。

3.3AndroidSDKTools

AndroidSDK包括各种各样的定制工具,可以帮助你在Android平台上开发移动应用程序。

其中最重要的工具是Android模拟器和Eclipse的Android开发工具插件,但SDK也包含了各种在模拟器上用于调试,打包和安装的工具

Android模拟器(AndroidEmulator ) 

AndroidEmulator是一款功能非常齐全的模拟器,电话本、通话等功能都可进行模拟。

甚至其内置的浏览器和GoogleMaps都可以联网。

用户可以使用键盘输入,单击模拟器按键输入,甚至还可以使用鼠标单击、拖动屏幕进行操作。

1)模拟器和真机的不同之处

Ø不支持呼叫和接听实际来电,但可以通过控制台模拟电话呼叫(呼入和呼出)。

Ø不支持USB连接。

Ø不支持相机/视频捕捉。

Ø不支持音频输入(捕捉),但支持输出(重放)。

Ø不支持扩展耳机。

Ø不能确定连接状态。

Ø不能确定电池电量水平和交流充电状态。

Ø不能确定SD卡的插入/弹出。

Ø不支持蓝牙。

Dalvik 调试监视器服务(DalvikDebugMonitorService (ddms)) 

这个工具集成了Dalvik(为Android平台定制的虚拟机(VM)),能够让你在模拟器或者设备上管理进程并协助调试。

你可以使用它杀死进程,选择某个特定的进程来调试,产生跟踪数据,观察堆(heap)和线程信息,截取模拟器或设备的屏幕画面,还有更多的功能。

Android调试桥(AndroidDebugBridge (adb) ) 

Adb工具可以让你在模拟器或设备上安装应用程序的.apk文件,并从命令行访问模拟器或设备。

你也可以用它把Android模拟器或设备上的应用程序代码和一个标准的调试器连接在一起。

在SDK的Tools文件夹下包含着Android模拟器操作的重要命令ADB,ADB的全称为AndroidDebugBridge,就是调试桥的作用,借助这个工具,我们可以管理设备或手机模拟器的状态 ,还可以进行以下的操作:

(1)快速更新设备或手机模拟器中的代码,如应用或Android系统升级;

(2)在设备上运行Shell命令;

(3)管理设备或手机模拟器上的预定端口;

(4)在设备或手机模拟器上复制或粘贴文件。

AndroidAssetPackagingTool (aapt) 

Aapt工具可以让你创建包含Android应用程序二进制文件和资源文件的.apk文件。

Android接口描述语言(AndroidInterfaceDescriptionLanguage (aidl)) 

可以让你生成进程间的接口的代码,诸如service可能使用的接口。

sqlite3 

这个工具能够让你方便地访问SQLite数据文件。

这些数据文件是由Android应用程序创建并使用的。

Traceview 

这个工具可以将你的Android应用程序产生的跟踪日志(tracelog)转换为图形化的分析视图。

mksdcard 

帮助你创建磁盘映像(diskimage),你可以在模拟器环境下使用磁盘映像来模拟外部存储卡(例如SD卡)。

dx 

Dxgongju将.class字节码(bytecode)转换为Android字节码(保存在.dex文件中)。

UI/ApplicationExerciserMonkey 

Monkey是在模拟器上或设备上运行的一个小程序,它能够产生为随机的用户事件流,例如点击(click),触摸(touch),挥手(gestures),还有一系列的系统级事件。

你可以使用Monkey来给你正在开发的程序做随机的,但可重复的压力测试。

activitycreator 

一个可以产生Antbuild文件的脚本,你可以使用它编译你的android应用程序。

如果你正在Eclipse上开发,并使用ADT插件,你不必使用这个脚本。

logcat

LogCat是Android中一个命令行工具,可以用于得到程序的log信息。

利用LogCat查看日志信息

3.4AndroidSDK核心包

AndroidSDK提供了编写应用程序的一些基本包。

这些包通过分层方式组织,以下按照从底层到高层的顺序列出:

android.util:

包含有许多底层的工具类,例如专用容器类,XML工具等等。

android.os:

提供基本的操作系统服务、消息传递和进程间通讯。

android.graphics:

核心图形绘制包。

android.text、android.text.method、android.text.style、android.text.util:

提供丰富的文本处理工具、富文本支持以及输入法等等。

android.database:

包含数据库相关的底层API。

android.content:

提供大量的访问存储在设备上的数据的服务:

安装在设备上的应用及相关资源,用于持续的动态数据的内容提供器(contentprovider)。

android.view:

核心用户界面框架。

android.widget:

提供构建view包的标准用户界面元素(列表、按钮、布局管理器等等)。

android.app:

提供高层应用模型,通过活动实现。

3.5AndroidSDK可选API

Android适用于各种各样的手机,从最低端直到最高端的智能手机。

核心的AndroidAPI在每部手机上都可使用,但任然有一些API接口有一些特别的适用范围,这就是所谓的“可选API”。

这些API之所以是“可选的”,主要是因为一个手持设备并不一定要完全支持这类API,甚至于完全不支持。

例如,一个手持设备可能没有GPS或Wi-FI的硬件。

在这个条件下,这类功能的API任然存在,但不会以相同的方式来工作。

例如LocationAPI任然在没有GPS的设备上存在,但极有可能完全没有安装功能提供者,意味着这类API就不能有效地使用。

Wi-FiAPI

Wi-FiAPI为应用程序提供了一种与那些带有Wi-FI网络接口的底层无线堆栈相互交流的手段。

几乎所有的请求设备信息都是可利用的,包括网络的连接速度、IP地址、当前状态等等,还有一些其他可用网络的信息。

一些可用的交互操作包括扫描、添加、保存、结束和发起连接。

Wi-FiAPI在.wifi包中。

定位服务(Location-BasedServices)

定位服务允许软件获取手机当前的位置信息。

这包括从全球定位系统卫星上获取地理位置,但相关信息不限于此。

例如,未来其他定位系统可能会运营,届时,对其相应的API接口也会加入到系统中。

定位服务的API在android.location包中。

多媒体API(MediaAPIs)

多媒体API主要用于播放媒体文件。

这同时包括对音频(如播放MP3或其他音乐文件以及游戏声音效果等)和视频(如播放从网上下载的视频)的支持,并支持"播放URI地址"(Note:

URI即是统一资源识别地址)模式-在网络上直接播放的流媒体。

技术上来说,多媒体API并不是“可选的”,因为它总是要用到。

但是不同的硬件环境上面可能有不同的编解码的硬件机制,因而它又是“可选的”。

多媒体API在android.media包中。

基于OpenGL的3D图形(3DGraphicswithOpenGL)

Android的主要用户接口框架是一个典型的面向控件的类继承系统。

但不要让表面的情况迷惑了你,因为在它下面是一种非常快的2D和

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1