网上,有关基于Eclipse IDE开发环境搭建的资料还真不少,这里我就不再一步一步的将整个过程叙述一遍,毕竟,作为一名程序员还是应该有点儿复用的意识,哈哈!
-----------------------------------------------------------------------------------------------------------------------------------------------
搭建好开发环境,就通过ADT来创建一个HelloAndroid程序验证一下吧。
(1)打开Eclipse,File—>New—>Project 选择Android Project,点击Next
(2)输入Project name:HelloAndroid,选择Build Target,即SDK版本,这里选择Android 2.3.3,输入Application name:HelloAndroidWorld(也可以为空,这里有别于Project name的目的是了解ADT的创建细节),输入Package name:com.sample(包名一般选用反转域名),输入Create Activity:HelloActivity(如果勾选则自动创建一个Activity),点击Next,然后点击Finish,一个最简单的可以编译通过的Android应用程序便创建成功啦。
首先来看一下HelloAndroid工程的目录结构及主要文件,在Eclipse的Package Explorer中展开工程如下面左图所示,工程的目录文件如下面右图所示
其中,src目录下是程序源码文件;Android 2.3.3下是当初选择SDK时选择引入的jar包;res目录下是资源文件;assets目录下也可以存放资源文件,但与res目录下的资源文件相比使用的方式不太一样;gen目录下是编译过程中生成的中间文件,如R.java文件;bin目录下是编译连接过程后生成的文件,如.class文件、.apk文件等。
再来看一下几个重要的配置文件:
AndroidManifest.xml:该文件是用于向系统说明应用程序运行的一些重要信息的,每个应用程序都必须有一个AndroidManifest.xml文件。其内容包括定义组件、指定应用程序的访问权限、声明API等级、声明硬件和软件特性以及声明应用程序需要链接的API库(除Android框架API外)等。打开文件可看到如下内容:
<?
xml version="1.0" encoding="utf-8"
?>
<
manifest
xmlns:android
="http://schemas.android.com/apk/res/android"
package
="com.sample"
android:versionCode
="1"
android:versionName
="1.0"
>
<
application
android:icon
="@drawable/icon"
android:label
="@string/app_name"
>
<
activity
android:name
=".HelloActivity"
android:label
="@string/app_name"
>
<
intent-filter
>
<
action
android:name
="android.intent.action.MAIN"
/>
<
category
android:name
="android.intent.category.LAUNCHER"
/>
</
intent-filter
>
</
activity
>
</
application
>
</
manifest
>
对于该文件的定义及格式后续博文再作详细介绍。
res/layout/main.xml:界面布局配置文件。打开文件可看到如下内容:
<?
xml version="1.0" encoding="utf-8"
?>
<
LinearLayout
xmlns:android
="http://schemas.android.com/apk/res/android"
android:orientation
="vertical"
android:layout_width
="fill_parent"
android:layout_height
="fill_parent"
>
<
TextView
android:layout_width
="fill_parent"
android:layout_height
="wrap_content"
android:text
="@string/hello"
/>
</
LinearLayout
>
res/values/strings.xml:程序中显示的字符串的配置信息。打开文件可看到如下内容:
<?
xml version="1.0" encoding="utf-8"
?>
<
resources
>
<
string
name
="hello"
>
Hello World, HelloActivity!
</
string
>
<
string
name
="app_name"
>
HelloAndroidWorld
</
string
>
</
resources
>
default.properties:Android工具自动生成的,用于版本控制系统(Version Control System)读取,标明工程的环境信息,如Android版本信息。
proguard.cfg:Android工具ProGuard根据此文件中的配置对程序源码进行优化。
接下来,我们分析一下起初用工程向导创建工程的时候输入的内容分别在配置文件中或者源码中如何对应的。打开HelloActivity.java,其内容如下:
package
com.sample;
import
android.app.Activity;
import
android.os.Bundle;
public
class
HelloActivity
extends
Activity {
/**
Called when the activity is first created.
*/
@Override
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
结合上述所有内容可以看到,起初输入的工程名(Project name)仅为工程文件夹名称,不包含在配置文件或者源码文件中;起初输入的应用程序名(Application name)作为了strings.xml配置文件中,resources元素中的属性name值为“app_name”的子元素的内容;起初输入的Activity名作为了源码中Activity类的继承类的类名以及strings.xml配置文件中,resources元素中的属性name值为“hello”的子元素的内容。
最后,将程序Build后便可以运行啦!