获取内容资料
安卓开发

android项目开发详解

建立的HelloWorld的应用项目,其代码是由ADT插件自动生成的,形成Android项目特有的结构框架。

接下来让我带领大家解析一个Android程序的各个组成部分,这次我们拿一个Hello,World做例子,虽然只是一个Hello,World,但也是麻雀虽小五脏俱全,通过分析Hello,World的目录结构,让我们对Android程序有一个整体全面的认识。

一、创建一个Android 应用项目

选择File->New->Project…;选择Android 下的Android Project,单击Next按钮。

根据上面的目录结构,我们来分析一下

我们来大致了解一下安卓应用程序的目录的作用:

该目录下的文件存放Android应用程序中所有java源代码,自动地组织在用户定义声明的包内。

Activity是Android中的视图部分,负责界面显示。

该目录下的文件是由ADT自动生成的,即包内的R.java文件。该文件为项目中的各个资源在该类中创建其唯一的ID。

从R文件中可以看到每一个资源都会有一个整数和它相对应。

3. Android4.4

建立不同版本的可能会有不同的依赖。

Android4.4 目录存放该项目支持的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 元素(大部分是可见的)在应用程序的屏幕中使用

存放项目相关的资源文件

该目录用于存放生成的目标文件,例如Java的二进制文件、资源打包文件(.ap_后缀)、Dalvik虚拟机的可执行性文件(.dex后缀),打包好应用文件(.apk后缀)等。

该目录用于存放需要使用的第三方jar包文件。

该目录存放的是整个项目的经常使用的资源文件,新建一个项目,在该目录中自动建立以下目:

(1)drawable开头的四个目录:分别以三种尺寸存放png、 9.png、 jpg等图片资源。

(2)layout:存放应用程序的布局文件,文件类型为XML格式。新建项目时都有main.xml文件。

(3)values:存放所有XML格式的资源描述文件,例如字符串(strings.xml)、颜色(colors.xml)、样式(styles.xml)、尺寸(dimens.xml)和数组(arrays.xml)等。

res目录中的文件命名:以a-z、0-9、_字符命名文件名。

8. AndroidManifest.xml 文件

在每个应用程序的根目录都会有一个AndroidManifest.xml文件,该文件向Android操作系统描述了,本程序所包括的组件,所实现的功能,能处理的数据,要请求的资源等等。

学过Java Web开发的同学可以用Web应用程序里的web.xml来类比这个AndroidManifest.xml文件。

该文件为项目的系统控制文件,是每个Android项目必须的文件,位于项目的根目录。

9. proguard-project.txt 文件

proguard-project.txt文件是混淆代码的脚本配置文件。

10. project.properties 文件

project.properties文件是与当前应用所使用android的配置信息。

Similar Posts

发表评论

邮箱地址不会被公开。 必填项已用*标注