Android课件

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Android 讲义

第一章:初识Android

1:Android发展史

Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。

2:Android系统架构

Android的系统架构和其操作系统一样,采用了分层的架构。Android结构从架构图看,Android 分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。

2-1:应用程序

Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。

2-2:应用程序框架

开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。

隐藏在每个应用后面的是一系列的服务和系统, 其中包括;丰富而又可扩展的视图(Views),可以用来构建应用程序,它包括列表(Lists),网格(Grids),文本框(Text boxes),按钮(Buttons),甚至可嵌入的web浏览器。内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串,图形,和布局文件(Layout files )。通知管理器(Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。活动管理器(Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。

2-3:系统运行库

Android 包含一些C/C++库,这些库能被Android系统中不同的组件使用。它们通过Android 应用程序框架为开发者提供服务。以下是一些核心库:

* 系统C 库- 一个从BSD继承来的标准C系统函数库Libc ),它是专门为基于Embedded linux 的设备定制的。

* 媒体库- 基于PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。

* Surface Manager - 对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。

* LibWebCore - 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。

2-4:Liunx内核层

Android 的Linux控制包括安全(Security),存储器管理(Memory Management),程序管理(Process Management),网络堆栈(Network Stack),驱动程序模型(Driver Model)等

3:Android运行原理

Android 运行时由两部分组成:Android核心库和Dalvik虚拟机,其中核心库提供了大部分Java语言的核心库所能使用的绝大部分功能,而Dalvik虚拟机负责Android应用程序的运行每个Android应用程序都运行在单独的一个Dalvik虚拟机内,因此Dalvik对于同时运行多个虚拟机做了高效的优化,因此Android系统可以很方便的实现对Android应用的隔离

Dalvik和JVM不兼容,JVM运行的是class(字节码),而Dalvik运行的是专有的dex。JVM 能从Class直接读取数据运行,而Dalvik不能,Dalvik必须通过专有的DX工具把class文件编译成dex 文件。Dalvik基于寄存器实现,JVM基于栈实现

Android应用在安装后,运行时系统便会为其分配一个独立的存储空间,所谓的“Security Sandbox”,用于存放字节码文件、资源文件及配置文件等,同时,系统会为每一个应用程序分配唯一的ID,用以标识该应用程序的相关文件和资源,系统通过设置权限从而实现一个应用程序在一般情况下只能访问该应用程序的文件和资源。当应用程序或者它的某个组件需要运行时,系统便为其创建一个Linux进程,每个进程中实例化一个Dalvik虚拟机用以执行程序的字节码。程序运行中根据给自己设定的权限来访问相应的资源。

Java-class-dex

4:Android环境搭建

4-1:下载Android SDK

4-2:sdk目录结构(add-ons这里面保存着附加库,docs 所有的文档,platforms所有SDK版本文件,platform-tools保存着一些通用工具,比如adb、和aapt、aidl、dx等文件,这里和platforms目录中tools文件夹有些重复,主要是从android 2.3开始这些工具被划分为通用了,samples 所有版本的实例,tools 作为SDK根目录下的tools文件夹,这里包含了重要的工具,system-images 模拟器文件) 4-3:下载eclipse和ADT插件

4-4: android 常用命令:

4-4-1: android list target 显示当前系统中所有的android版本

Android list avd 显示当前系统中所有的模拟器

Android sdk 启动当前系统中的SDK Manager

Android avd 启动当前系统中AVD Manager

Android list device 显示当前系统中所有的模拟设备

Android create avd –name 名称–target 平台编号创建模拟器

Android delete avd –name 名称删除模拟器

4-4-2: emulator –avd 名称启动模拟器

4-4-3: ddms

4-4-3: adb devices 显示当前连接的模拟器

Adb push 文件路径copy文件到模拟器

Adb pull 文件路径copy从模拟器copy文件

Adb instance –r apk路径

adb shell

cd data/app

rm apk包

exit

adb uninstall apk包的主包名

5:第一个Android工程

第二章:Android 布局及基本控件

1:界面编程与视图组件

Android的视图组件一般都是放在android.widget,android.view包或者两个包的子包中,Android的UI组件都继承View类。ViewGroup也是继承自View类,也是一个容器。

ViewGroup的两个子类:layoutParams控制组件放入当前容器里面后组件本身的宽和高MarginLayoutParams 控制组件放入当前容器后和容器之间的距离(上下左右)

相关文档
最新文档