android的开发环境搭建(MyEclipse9.1+ Android SDK2.3)
一、基本步骤概况
1、安装MyEclipse
2、安装和配置Android SDK2.3
3、安装ADT
4、配置Android Preferences
5、创建AVD(Android Virtual Devices) ,运行AVD
6.创建Hello Android!程序
7. 工程文件目录文件介绍
二、详细步骤
1、下载并安装MyEclipse9.1
2、android-sdk下载与安装。
1)下载
由于android开发者社区网址 http://developer.android.com/很多时候打不开,所以找了个新网址http://androidappdocs.appspot.com/下载android-sdk_r08-windows.zip (31M)解压这个压缩包,不需要安装。配置环境变量PATH,指向解压后文件夹中的tools文件夹。
2)测试
运行,输入CMD,输入命令 android -h ,如果命令有效果,说明配置成功了。
3)安装
运行解压后目录中的 SDK Manager.exe,出现如下界面后,直接点击【Cancel】
选择左边列表中的【Settings】,在出现的界面中将红框圈出的一项打上√
择左边列表中的【Available Packages】,在出现的界面中勾选超链接
点击install selected
选择【Accept All】,然后点击【Install】
接下来就是等待下载并安装Packages的过程.....
3、安装ADT
点击菜单栏中的【Help】 ,选择【MyEclipse Configuration Center】
接下来按照如下图示步骤进行
选择【Software】,再点击【Browse Sofeware】搜索输入框后面的【add site】
Name:android
URL: https://dl-ssl.google.com/android/eclipse
点击上图【OK】后,你会在【Browse Software】下面的Personal Sites中找到android,展开节点,右击Android DDMS,选择【Add to Profile...】
在界面最下面偏右可以看到,出现了Apply ? change 按钮,直接点击
出现下面界面
勾选接受并点击【Next】,
有什么会没有用,另外一种方法:
你只要下载了ADT解压,把里面的plugs.features.拷到你的myelcipse的drops文件夹中去就可以,关闭工具,重新打开,配置SDK,就可以开发了
点击Update,安装开始,等待安装OK吧(中途有可能更新发生错误,back,继续update就可以了)
4、配置Android preferences
点击菜单栏【Window 】-【Preferences 】
选择【Android】,SDK Location选择解压后的文件夹中对应的目录,然后点击【Apply】-【OK】
5、创建AVD(Android Virtual Devices)
点击下图中的【Android SDK and AVD Manager】
然后选择 Available Package
因为需要兼容性测试,如果条件允许,最好 多装些版本。(这个暂时不选都可以,官方有这方面的建议的)
然后,点击Install Selected 开始安装。这又是一个漫长的过程,可能非常漫长。呵呵
安装好了后。我们开始建立一个虚拟机
点击new,出现下图
name:android23(启动模拟器的时候需要敲的)
Target:android 2.3-API Level 9(这里可以选择其它版本的,前提是你是否都更新了呢!我这里选择这个目前最新的),
SD Card:输入你想要的大小。其他默认就可以了,完后点Create AVD。
创建成功,点击右侧的【Start】按钮,然后点击launch,开始启动模拟器。
下图中,启动不成功出现错误
是什么原因呢?找不到虚拟设备,经过网上查找分析
原因:我的电脑在安装的时候是ghost版的,修改过Windows的"我的文档"路径,就会出现上图的错误。
但这个又怎么改呢,好像没有地方下手,就到最后一步了,总不能重新安装系统吧,那就太费事了
解决办法:设置环境变量
重新启动myeclipse
上面的路径变了,我们再重复创建AVD并启动
终于看到启动画面了,成功了!
6.创建Hello Android!
1) 创建
File—>New-->Other
创建一个Android项目
点击Finish。
运行项目,右键点击项目->Run As –> Android Application
等出现下图界面
点击上图的menu按纽,就会看到我们的程序HelloAndroid!
再点击menu旁边的小房子会出现界面
点击左下图电话旁边的那个好多点的那个按纽会回到主界面
主界面上也显示我们创建的程序HelloAndroid了
7.工程文件目录文件介绍
2)Android工程目录介绍
src:源代码
gen:Android开发工具生成所生成的文件(类似于web的classes目录),我们不用编辑这个文件
R.java:标识程序中使用的各种资源。没有被此文件标识的资源,不会被打包到APK文件中。
assets: 应用系统需要使用到的文件,比如mp3、视频...。这些文件会被原样打包到APK 中。
Res: 资源目录,向此目录添加资源时,会被R.java 自动记录。
drawabel-?dpi:图标文件(*.png、*.jpg)
layout:界面布局文件(main.xml)与WEB 应用中的HTML 类同
values :软件上所需要显示的各种文字。可以存放多个*.xml 文件,还可以存放不同类型的数据。比如arrays.xml、colors.xml、dimens.xml、styles.xml...。
AndroidManifest.xml:项目的总配置文件,记录应用中所使用的各种组件。如果应用中使用到手机中的功
能,需要在此声明使用权限。
default.properties:记录项目中所需要的环境信息,比如Android 的版本等。
proguard.cfg: 这个文件包含Proguard的混淆参数设置。
3) AndroidManifest.xml程序的运行由主配置文分析
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.drager.android.test"
android:versionCode="1"
android:versionName="1.0">
<!--
@drawable/icon:
@代表R.java
drawable 是R.java 的静态内部类
icon 是drawable 的常量,指定图片资源的ID。
-->
<application android:icon="@drawable/icon" android:label="@string/app_name">
<!--
. HelloAndroid指向package=”com.drager.android.test”下面的HelloAndroid类。
我们可以在此添加子包.sub.xxxClass,但不能添加上级包。
-->
<
<activity android:name=".HelloAndroid"
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>
<!-- 本程序使用AndoridSDK 的最低版本-->
<uses-sdk android:minSdkVersion="9" />
</manifest>
接下来从helloAndroid类开始看看
package com.drager.android.test;
import android.app.Activity;
import android.os.Bundle;
/**
* 我们的HelloAndroid类,继承自Activity 类。
*
*/
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
// 在此方法中完成界面的绘制
super.onCreate(savedInstanceState);
// 显示R.java 文件中的layout 静态内部类的main 常量。它指向mail.xml
setContentView(R.layout.main);
}
}
然后再我们再看看mail.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"
>
<!--
文本视图控件
android:layout_width="fill_parent" ,它的父窗口是屏幕,所以宽度为整个屏幕。
android:layout_height="wrap_content" ,它的高度为它所包含的内容高度。如果内容中有一行,
就是一行的高度。
android:text="@string/hello",它包含(显示)的文本内容,指向R.java 中string 静态内部类的
常量hello 所指向的文本资源ID,文本资源文件是strings.xml。
-->
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
再看看Strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, helloAndroid!</string>
<string name="app_name">HelloAndroid</string>
</resources>
现在让我们看看掌管资源的主文件R.java:
package com.drager.android.test;
public final class R {
public static final class attr {
}
// 图片资源
public static final class drawable {
public static final int icon=0x7f020000;
}
// 界面布局资源
public static final class layout {
public static final int main=0x7f030000;
}
// 字符串资源
public static final class string {
public static final int app_name=0x7f040001;
public static final int hello=0x7f040000;
}
}
R.java 文件中的所有资源ID 全部是自动生成的,我们不可以手动编辑。当我们添加一个图片时,ADT 插件,会以图片的名称为常量的名称,然后自动生成对应的资源ID。当我们向strings.xml 中添加一个字符串时,ADT 插件会以符串的名称为常量的名称,然后自动生成对应的资源ID。
R.java 文件不需要我们手动编辑,我们只需要在需要使用到资源的地方引用这个文件里标识的资源即可!