250 likes | 458 Views
3G 移动互联网应用技术开发. 第二章 : Android 应用开发基础. 课程回顾. 提问: Android 系统的体系结构组成? Android 系统中的四大核心组件是哪些?他们之间如何进行通信? ViewGroup 这个组件的作用是什么? 启动 AVD (虚拟设配)的命令是什么? 如何安装和卸载 AVD (虚拟设备)中的 Andorid 应用程序?. 本章概述. 本章首先了解, Android 虚拟设备的使用,通过使用来了解 Android 系 统的界面风格及操作是用习惯,这对于我们今后开发 Android 应用程序打 下一个良好的基础。.
E N D
3G移动互联网应用技术开发 第二章:Android应用开发基础
课程回顾 • 提问: • Android系统的体系结构组成? • Android系统中的四大核心组件是哪些?他们之间如何进行通信? • ViewGroup这个组件的作用是什么? • 启动AVD(虚拟设配)的命令是什么? • 如何安装和卸载AVD(虚拟设备)中的Andorid应用程序?
本章概述 本章首先了解,Android虚拟设备的使用,通过使用来了解Android系 统的界面风格及操作是用习惯,这对于我们今后开发Android应用程序打 下一个良好的基础。 我们在上一章的学习中了解Android中的一些DOS命令,但若从开发的 角度来讲这样做的效率相对较低,而且我们需要一个强大的集成开发环境 帮助我们对Android应用程序进行开发、调试、编译、打包、部署等工作, Android提供了针对Eclipse的开发插件Android Development Tools。 (ADT,Android开发工具)有了ADT我们可以在Eclipse开发环境中快速创建Android应用程序。 同时我们可以通过对Android应用程序的创建来初步了解Android应用程序的文件架结构,以及各个文件夹的作用。掌握了这些才能使我们更快更高效地开发Android应用程序。
本章目标 • 了解AVD虚拟机(Android系统)的使用 • 掌握Eclipse中配置Android开发环境 • 使用Eclipse开发一个Android的应用程序 • 掌握Android应用程序的文件夹结构
2-1:Android 虚拟设备的使用 I • 若要学习基于Android操作系统的开发,我们首先要熟悉并了解Android手机的基本使用。下面我们就Android手机的基本使用及AVD的使用简单介绍一下: • 首先,需要了解一下手机特殊按键的作用 • Android系统基本为触屏手机,所以我们使用鼠标代替手指,鼠标左键 • 点击代表手指点击,鼠标点住拖拽代表手指按住拖拽。
2-1:Android 虚拟设备的使用 II • 将手机设置为中文界面(Android AVD默认界面是英文的) 点击这里,进入到【地区设置】 • 关闭AVD虚拟机,重新启动。 通过鼠标拖拽,对屏幕进行解锁 通过鼠标拖拽,找到并点击这里,选择【zh_CN】 • Androud系统的汉化工作已经完成! 点击这里,进入到主功能菜单
2-1:Android 虚拟设备的使用 III • 如何设置桌面背景 点击菜单按钮,弹出菜单选项 点击选择壁纸 点击【壁纸】,进行设置 选择并点击【设置壁纸】
2-1:Android 虚拟设备的使用 IV • 如何进行横屏和竖屏的切换 我们使用快捷键 Ctrl+F12可以完成AVD的横屏或竖屏切换。
2-1:Android 虚拟设备的使用 V • 两个AVD之间进行电话通话 • 说明:AVD右上角的ID号(5556:xxxx)就是虚拟设备的号码。 单击这里,拨打电话
2-1:Android 虚拟设备的使用 VI • 两个AVD之间进行SMS短息互通
2-1:Android 虚拟设备的使用 VII • 删除Android系统中的应用程序
2-2:Android 开发环境搭建 I • 步骤1:下载Java JDK 进行安装 JDK的官方下载网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
2-2:Android 开发环境搭建 II • 步骤2:在系统环境变量中配置JDK • 步骤2:配置Path系统环境变量 • 步骤3:设置classPath系统变量 • 步骤1:配置java_home系统变量 • 演示系统环境变量的配置
2-2:Android 开发环境搭建 III • 步骤3:下载Eclispe Helios (3.6.2) 进行安装 Eclispe的官方下载网址:http://www.eclipse.org/downloads/ • 下载完毕后直接解压缩安装即可
2-2:Android 开发环境搭建 IV • 步骤4:为Eclipse开发工具安装(Android Development Kit,ADT)插件 • 演示ADT插件的在线安装过程
2-2:Android 开发环境搭建 V • 步骤5:在Eclipse中配置ADT插件 点击菜单中的【windows】->【Preferences】 定位Android SDK文件夹的位置 • 演示ADT插件的配置过程
2-3-1:第一个Android应用程序 • 在Eclipse中,单击【File】->【New】->【Android Project】 项目名称,不要出现中文或特殊字符 在工作空间中创建一个新的项目 选择项目所支持的Android系统版本号 设置应用程序名称、包名称、首页面名称、最低支持的Android API 版本号。 • 演示Android项目创建过程
2-3-2:启动Android应用程序 • 步骤1:启动Android AVD虚拟设备。 命令:emulator -avd android2.3 -scale 0.6 • 步骤2:右击项目,选择【Run as】->【Android Application】。 • 演示Android项目创建运行过程 • 考虑如何卸载该程序
2-4:Android 应用程序文件夹结构 • Android 项目名称 • src项目类文件夹 存放项目中所有的类文件(包括 • 界面类文件、业务逻辑类文件等) • gen 项目界面元素映射文件夹,该文件夹中的 • R.java文件一般情况下不允许程序员私自修改,有 • 项目自动托管。 • Android 2.3.3 API工具包 • assets 存放项目资源文件夹(音频、视频等) • res也是资源文件夹,但drawable存放项目中所使用的 • 图片,layout中的main.xml是界面布局及控件的声明文 • 件,values中的string.xml是程序用到的一些常量值。 • AndroidManifest.xml 是Android核心的配置文件 • 项目基本信息配置文件
2-4-1:Activity类 MainActivity文件浅析 • Activity是Android中的视图部分,负责界面显示。 可以看到MainActivity是Activity的子类,子类要重写onCreate方法。setContentView(R.layout.main)方法是给Activity设置可以显示的视图(View),视图由R类负责寻找。
2-4-3:res/layout/main.xml文件浅析 – 布局layout • 我们看到有个res目录,也就是resource目录,这个目录下存放资源文件,资源文件的统一管理,也是Android系统的一大特色。现在要注意看的 是layout目录下的main.xml。这个文件的内容是有关用户界面布局和设计的。在桌面程序设计领域采用XML也许比较新颖,但是在网页设计领域, 这个就很平常了。同学们可以用html来类比xml在布局中的用途。 从以上代码可以看到整个程序界面由一个线性布局控件(LinearLayout)和2个文本框控件(TextView)组成。res的其他目录里的其他文件也都是相关的资源描述。
2-4-4:AndroidManifest.xml文件浅析 • 在每个应用程序的根目录都会有一个AndroidManifest.xml文件,该文件向Android操作系统描述了,本程序所包括的组件,所实现的功 能,能处理的数据,要请求的资源等等。学过Java Web开发的同学可以用Web应用程序里的web.xml来类比这个AndroidManifest.xml文件。 我们看到Manifest是根节点,节点属性里有versionCode和versionName来表示应用程序的版本;里面可以包含0个或1个 application元素,application可以包含多个activity组件等等,具体的内容我们在接下来的课程里详细讲解。
2-4-5:Android.jar文件浅析 • 作为一个Java项目,通常情况下都会引入要用到的工具类,也就是Jar包,在Android开发中,绝大部分开发用的工具包都被封装到一个名叫 Android.jar的文件里了。如果我们在Eclipse中展开来看,可以看到j2se中的包,apache项目中的包,还有Android自身的包 文件。在这里我们简单浏览一下Android的包文件: android.app :提供高层的程序模型、提供基本的运行环境android.content:包含各种的对设备上的数据进行访问和发布的类android.database:通过内容提供者浏览和操作数据库android.graphics:底层的图形库,包含画布,颜色过滤,点,矩形,可以将他们直接绘制到屏幕上.android.location:定位和相关服务的类android.media:提供一些类管理多种音频、视频的媒体接口android.net :提供帮助网络访问的类,超过通常的java.net.* 接口android.os:提供了系统服务、消息传输、IPC 机制android.opengl:提供OpenGL 的工具android.provider:提供类访问Android 的内容提供者android.telephony:提供与拨打电话相关的API 交互android.view:提供基础的用户界面接口框架android.util:涉及工具性的方法,例如时间日期的操作android.webkit:默认浏览器操作接口android.widget:包含各种UI 元素(大部分是可见的)在应用程序的屏幕中使用
本章总结 • 每次启动一个AVD(虚拟设备),Android系统都会为虚拟设备分配一个端口号,而这个端口号就是虚拟设备的“电话号码”,我们可以通过它来模拟电话和短信功能。 • “工欲善其事,必先利其器”我们使用Eclipse强大IDE集成开发环境配合ADT插件可以进行快速的Android应用程序开发,从而提高了我们的开发效率。 • 掌握Android应用程序的创建过程及发布流程,启动一个AVD设备后再进行项目的发布可以提高整体的运行速度。 • AndroidManifast.xml文件是Android应用程序的核心配置文件。这里存放的一般是项目所有的界面(Activity类对象),而每个Activity中有哪些视图控件则是由res/layout/main.xml文件决定,在Activity中引用这个文件即可。 • 了解Android应用程序是通过R.java文件将视图控件和Activity类文件之间进行连接和绑定。
第二章 课后作业 • 请您简述和Android项目结构中res/layout/main.xml文件的作用? • 请您简述AndroidMainfast.xml文件在项目中的作用? • 如何理解gen/R.java文件的功能? • assets文件夹存放的哪类文件? • 项目中res/drawable和 res/values 两个文件夹的作用分别是什么? 实践1:创建两个AVD虚拟设备,测试通话和短信功能。 实践2:安装和配置Eclipse开发环境。 实践3:创建一个Android应用程序,界面显示“我在学习Android开发”。