android 入门之应用工程文件组成详解

上传人:xzh****18 文档编号:35421050 上传时间:2018-03-15 格式:DOC 页数:8 大小:282.50KB
返回 下载 相关 举报
android 入门之应用工程文件组成详解_第1页
第1页 / 共8页
android 入门之应用工程文件组成详解_第2页
第2页 / 共8页
android 入门之应用工程文件组成详解_第3页
第3页 / 共8页
android 入门之应用工程文件组成详解_第4页
第4页 / 共8页
android 入门之应用工程文件组成详解_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《android 入门之应用工程文件组成详解》由会员分享,可在线阅读,更多相关《android 入门之应用工程文件组成详解(8页珍藏版)》请在金锄头文库上搜索。

1、android 入门之应用工程文件组成详解入门之应用工程文件组成详解前面通过 android 入门之二【android 体系架构】和 android 入门之三【应用程序组成】从大的结构框架和应用级别了解了下 android,这里将从应用工程的角度来了解一个典型的应用工程的文件组成是什么样的以及这些文件的作用和在 android 应用中扮演的角色,这里从一个最简单最典型的应用“HelloWorld”应用去逐个的分析 android 应用工程中各个文件夹或者文件的内容。一、创建一、创建”HelloWorld“前面已经讲过了 android 开发环境的搭建(android 入门之一【开发环境搭建】)

2、,这里使用第一节搭建的环境来创建第一个 android 应用程序。打开 Eclipse 依次选择”File-New-Project.”弹出如下图对话框:在对话框中选择 Android 下的”Android Project“,然后”Next“,弹出下面的对话框:在 Project name 中填写项目的名称“HelloWorld”,在 Contents 中选择“Create new project in workspace”表示要新建一个项目,第二项“Create project from existing source” 表示从已有的代码中创建项目,一般用于导入已经存在的项目到当前的工作窗口中

3、。再选择 Use default loaction。“Create project from existing sample” 表示创建 android 的示例项目,如果选自则会在项目中将 android 的示例导入到当前创建的项目中。在 Build Taget 中选择 android 的版本,这里选择 android 2.0。在属性框中,填写应用的名称:“HelloWorld”,Package name 为:“com.andorid.helloworld”Activity 为:mainMin SDK Version:5,这个 5 表示当前 Andorid SDK 的版本。以上参数填写完成后“

4、Finish“,HelloWorld 项目就创建完成了。二、二、Android 标准工程文件的结构标准工程文件的结构将上面创建好的 Helloworld 项目中的文件夹逐一展开如下图所示1.src 目录src 目录下放置的是 Java 源文件,这个文件中可以创建若干的 Java 包,在包中可以创建应用的处理逻辑,应用的 Activity 都会放在这个目录下,上图中的“main.java”就是在创建项目的时候创建的一个 Activity,在 Activity 中可以编写控制 View 的逻辑。核心的控制逻辑都都会写在这里,看看“main.java”中都有什么:1: package com.and

5、roid.helloworld;2: 3: import android.app.Activity;4: import android.os.Bundle;5: 6: public class main extends Activity 7: /* Called when the activity is first created. */8: Override9: public void onCreate(Bundle savedInstanceState) 10: super.onCreate(savedInstanceState);11: setContentView(R.layout.m

6、ain);12: 13: 代码解释:第一行表示包的名称。3,4 行代码导入 Android 的包,相当于.net 中的 using 语句引入命名空间。6 到 13 行是 main 类的主体,main 类继承自 Activity,android 中所有的用户界面展示的类都直接或间接继承自 Activity。8 到 12 行是一个重要的函数,这个函数重写 Actitity 中的 onCreate,每一个继承自Activity 的子类都要重写该方法来初始化界面,和 中 Page_Load 事件相似,可以在这个方法中初始化界面上的元素,8 行中“Override”表示方法的“重写”是 Java 的关

7、键字,11 行设置了 main 这个 Activity 要展示的用户界面的配置文件,”R.layout.main”是一个资源的常量,这个资源是对 main.xml 的一个间接引用,当程序启动时将 main.xml文件中的内容展示给用户。2.Android 2.0 目录这个目录下放的是当前工程使用的 android SDK.上图中表示当前项目引用的是 Android SDK 2.0,不同版本的 SDK 这个文件的名会不同。3.gen 目录gen 目录下的 Java 包中有一个“R.java”文件,这个文件是由 Eclipse 自动生成的,开发者不用去修改和维护里面的内容,但是这个文件却非常有用,

8、它和另一个文件夹 res 紧密相连,对 res 下资源的操作都会导致 R.java 文件的重新编译,R.java 中定义的常量类也是间接帮助 Activity 完成对资源的应用,android 这样设计的好处是,使得复杂的资源通过专门的类来管理而使得程序中的代码变得整齐,强壮,不会出现一些“弱类型的字符串”而变成强类型(这里借用了.net中的术语),减少程序出错和减少 bug。基本的 R.java 的代码如下:1: /* AUTO-GENERATED FILE. DO NOT MODIFY.2: *3: * This class was automatically generated by t

9、he4: * aapt tool from the resource data it found. It5: * should not be modified by hand.6: */7: 8: package com.android.helloworld;9: 10: public final class R 11: public static final class attr 12: 13: public static final class drawable 14: public static final int icon=0x7f020000;15: 16: public stati

10、c final class layout 17: public static final int main=0x7f030000;18: 19: public static final class string 20: public static final int app_name=0x7f040001;21: public static final int hello=0x7f040000;22: 23: 4.assets 目录这个目录中通常放置一些原生的资源,它会在 android 打包的时候原封不动的一起打包,安装时会直接解压到对应的 assets 目录中。这里同常放置一些项目中用到的

11、多媒体资源等。注意:在醒目打包的时候删除掉项目中没有引用到的资源,因为这会占用设备资源同时也会“撑大”应用apk包5.res 目录这个目录中放置的是 android 要用到的各种资源drawale*dpi 文件夹中放置一些图片资源项目 ico 等layout 中放置项目布局的 XML 文件,所有 UI 布局的 xml 文件都放置这个文件夹中,并且每创建一个资源 R.java 中都会创建一个资源常量。android 的 UI 是通过 xml 来描述的,它将 UI 展示和逻辑控制分离这也是 android 的一个有点,针对不同的分辨率的适配也是相当容易的,不用去改动业务逻辑只需要重新创建一套适应的

12、 xml 布局就可以了。main.xml 文件内容:1: 2: 7: 12: 这个文件中的内容就是 android UI 布局的描述,针对 android 的 UI 布局后面会专门用篇幅来介绍,这里不做过多的解释。6.values 目录这个目录中放置的是一些字符串,数组,颜色,样式,动画等资源,好的程序设计习惯是将界面中所用到的信息资源以单独文件形式存储,这样好处是易于管理,易于维护,更重要的原因是在多语言处理的时候会非常方便,我想 Google 在当时设计 android 的时候一定充分考录到了这些因素,所以才使得多语言变得简单,values 目录下的资源也是通过Eclipse 来维护其和

13、R.java 的对应关系,Activity 不需要引用直接的资源而是通过引用R.java 中的常量,这一点非常巧妙,也为我们编程带来了极大的便利,string.xml 中的文件内容:1: 2: 3: Hello World, main!4: HelloWorld5: 这个文件中定义了两个变量“hello” 和“app_name”,hello 的值”Hello World,main !”表示在界面中显示这样一个问候语,它的引用在 main.xml 文件中:android:text=“string/hello“,这个“string/hello“是引用资源的常用的写法,以+文件名+资源的名称。app

14、_name 的值“HelloWorld”表示项目的名称。在 R.java 的定义如下:1: public static final class string 2: public static final int app_name=0x7f040001;3: public static final int hello=0x7f040000;4: 这里将文件名 string.xml 转化成一个 string 静态类,文件中的资源名被转化成了一个静态的整型常量。Values 目录中的每一个文件都会转化成 R.java 中的一个静态类,文件中的每一个资源都会转化成 R.java 中对应静态类的静态整型

15、常量,这样 Activiy 中通过一个解析器就可以获取到对应的资源。7.AndroidManifest.xml 文件这个文件是整个项目的配置资源,里面配置的内容包括,Activity,访问权限等等,这个文件相当于 中的 web.config 文件。AndroidManifest.xml 文件的内容:1: 2: 6: 7: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 这个文件中 7 到 13 行配置了项目中的 UI 包、用到的 Activity 以及项目启动的主界面为“.main”(这 main 就是 src 目录下的那个 main.java 文件的类名)16 行配置了使用android SDK 的版本。8.default.properties 文件这个文件中记录了 android 项目运行时的环境信息以及 Android SDK 的版本信息,文件的内容如下:1: # This file is automatically generated by Android Tools.2: # Do not modify this file - YOUR CHANGES WILL BE ERASED!3: # 4: # This fi

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 多媒体应用

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号