欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android开发环境搭建

程序员文章站 2022-03-08 17:48:45
1 软件下载 (1) jdk : (2) eclipse : (3) android sdk : 下载:或 (4) adt : 下载:adt-22.6...

1 软件下载

(1) jdk :

(2) eclipse :

(3) android sdk :

下载:或

(4) adt :

下载:adt-22.6.2.zip

2 安装

2.1 jdk安装jdk并配置java_home环境变量。

2.2 eclipse 解压eclipse。

2.3安装android sdk 双击安装installer_r22.6.2-windows.exe。

安装完成后配置环境变量: %android_sdk_home% = c:\programdev\android\android-sdk。如果不配置android_sdk_home,则打开"sdk manager.exe"后,生成的相关文件会位于c:\users\(用户名)\.android目录下,配置了环境变量,则.android目录会位于%android_sdk_home%指向的目录下。

2.4 安装adt点击help->install new software,然后add->archive->找到我们下载好的adt-22.6.2.zip,同时给个名称,如adt plugin,如下图:

Android开发环境搭建

确定之后,勾选developer tools,下一步:

Android开发环境搭建

然后再点下一步,一直继续。

3 运行eclipse3.1 打开eclipse配置android sdk位置

Android开发环境搭建3.2

切换透视图

我们先切换透视图到java,找到右上角的透视图按钮,在弹出的窗口中选择java,确定。

Android开发环境搭建

这时工具栏发生了小小变化,多出了两个小按键Android开发环境搭建:左边的就是sdk manager,右边的是android虚拟设置管理器,即avd(android virtual device)manager。我们马上就要操作它。

注:在java ee视图下没有工具栏的android图标。3.3 创建一个设备

avd(android virtual device)就是android应用程序运行的虚拟设备。建立的android应用要运行,必须创建avd,每个avd上可以配置很多的运行项目。

点击工具栏上的类似手机的一个小按钮,弹出对话框:

Android开发环境搭建

点new,我们来新建一个设备:sd卡会在系统里生成一个同等大小的文件,用来模拟sd卡,因此不宜设置得太大。

Android开发环境搭建

点击确定,新建成功。

Android开发环境搭建

4 创建hello world项目

点击file -> new -> android application project

Android开发环境搭建

填好应用名称和相应信息,包名一般是网站域名倒过来写,包名一定要唯一,否则就被认为是同一个程序。目标版本是兼容最高的版本。点击next:

Android开发环境搭建

mark this project as a library:为其他应用程序做基础,作为一个包存在。

Android开发环境搭建

以上是设置启动程序的图标。

Android开发环境搭建

上是创建一个应用程序的模板选择。

Android开发环境搭建

点击finish,一个项目创建完成。

完成后,project explorer窗口有了一个helloworld的东东。

Android开发环境搭建

src源文件

gen adt自动生成的java文件,程序员千万不要去修改

android 4.4.2+android private libraries jar文件

assets资源文件,图片,音频,视频等

bin二进制文件,编译过后的文件

libs第三方的jar文件,即引用第三方的代码

res也是资源文件,与assets不同,生成的文件都有id

5 运行hello world项目

在helloworld上点右键,run as->run configuration:

或在helloworld上点右键,run as->android application:

Android开发环境搭建

第一次启动可能需要几分钟,请耐心等待:

Android开发环境搭建

hello world!虽然还没有编写一句代码,但是经典的hello world界面出现了。看到这个界面后,你的android编码之旅就正式启航了。

6 离线下载android sdk

打开"sdk manager.exe",下载相关的sdk时,会非常慢。可手动获取这些包的下载地址并使用下载工具下载,手动安装。安装方法简单,重点在于获取下载地址,因每次版本更新地址都可能会有所不同。下载完成后将下载的压缩包放入temp文件夹下。

例如:c:\programdev\android\android_sdk\temp。

然后执行android sdk manager 选择你已经下载的包进行安装即可。

6.1 获取离线安装包地址

在"sdk manager"中,打开右下角的查看日志按钮(红色手右边的那个按钮)可获取读取xml文件日志。认真查看日志文件,发现规律如下:先加载一个xml文件,解析该xml文件,再从该xml文件中获取对应分类的文件的版本信息。逐一打开这几个xml文件,发现就是描述各分类文件的版本信息的,此时我们可从xml文件查看各文件名,只需该文件名填入到这个下载地址即可完成下载:

(后面这个******.zip是根据你需要下载的文件进行对应填充)。

查看sdk manager log发现每次更新时,sdk manager 都下载以下几个xml文件:

编写一个简单程序,将其中的名为url的标签对应的内容,拼接在路径 后面,即可得到所有需要的安装包的下载地址,然后可以用迅雷等下载工具进行下载,将下载好的包拷贝到sdk根目录下的temp文件夹内,再点安装时,即可直接安装,节省大量时间。

6.2 解析地址程序

用到库,请自行下载。

import java.io.bufferedwriter;
import java.io.file;
import java.io.filenotfoundexception;
import java.io.filewriter;
import java.io.ioexception;
import java.net.malformedurlexception;
import java.net.url;
import java.util.iterator;
import java.util.list;

import org.dom4j.document;
import org.dom4j.documentexception;
import org.dom4j.element;
import org.dom4j.io.saxreader;

/**
* 2014-04-20: wintys changed from zqy's urlfinder
* ==============================================
* this program allow you to catch the url of the installation packages
* download by android sdk manager. run this program and get packages'urls
* in the urlfile.txt, copy them to download tools to download them faster.
* (the speed is extremely slow in china.)
* copy the downloaded packages to {your installation path of android sdk}/temp
* and install them fast in sdk manager. enjoy.
*
* @author zqy
*
*/
public class androidsdkurlparse {
/* the xml files the sdk manager read... */
public static final string repository = "http://dl-ssl.google.com/android/repository/repository-8.xml";
public static final string addon = "http://dl-ssl.google.com/android/repository/addon.xml";
public static final string addon6 = "https://dl-ssl.google.com/android/repository/addon-6.xml";

public static final string addon2 = "http://software.intel.com/sites/landingpage/android/addon.xml";
public static final string sysimg = "http://www.mips.com/global/sdk-sys-img.xml";
public static final string sysimg2 = "http://download-software.intel.com/sites/landingpage/android/sys-img.xml";


public static final string[] repos = { repository, addon , addon6};


public static void main(string[] args) throws malformedurlexception,
documentexception {
bufferedwriter out = null;
try {
file file = new file("urlfile.txt");
out = new bufferedwriter(new filewriter(file));
for (string repo : repos) {
try{
document doc = read(repo);
findurl(doc.getrootelement(), out);
}catch(exception e){
e.printstacktrace();
}
}
out.close();
} catch (filenotfoundexception e) {
system.err.println("url does not exits.");
} catch (ioexception e) {
system.err.println("error write output file.");
}

}

/* find the <sdk:url/> tag, and get the absolute path of the file */
public static void findurl(element element, bufferedwriter out)
throws ioexception {
list<?> list = element.elements();
for (iterator<?> its = list.iterator(); its.hasnext();) {
element e = (element) its.next();
if (e.getname().equals("url")) {
string text = e.gettext();
string url = "";
if(text != null && !text.startswith("http")){
url = "http://dl-ssl.google.com/android/repository/"+ text;
}else{
url = text ;
}
url += "\n";
system.out.println(text);
out.write(url);
}
findurl(e, out);
}
}

public static document read(string filename) throws malformedurlexception,
documentexception {
saxreader reader = new saxreader();
document document = reader.read(new url(filename));
return document;
}
}

运行结果:

android-1.1_r1-windows.zip

android-1.1_r1-macosx.zip

android-1.1_r1-linux.zip

android-1.5_r04-windows.zip

android-1.5_r04-macosx.zip

android-1.5_r04-linux.zip

android-1.6_r03-linux.zip

android-1.6_r03-macosx.zip

android-1.6_r03-windows.zip

android-2.0_r01-linux.zip

android-2.0_r01-macosx.zip

android-2.0_r01-windows.zip

android-2.0.1_r01-linux.zip

android-2.0.1_r01-macosx.zip

android-2.0.1_r01-windows.zip

android-2.1_r03-linux.zip

android-2.2_r03-linux.zip

android-2.3.1_r02-linux.zip

android-2.3.3_r02-linux.zip

android-3.0_r02-linux.zip

android-3.1_r03-linux.zip

android-3.2_r01-linux.zip

android-14_r03.zip

android-15_r03.zip

android-16_r04.zip

android-17_r02.zip

android-18_r02.zip

android-19_r03.zip

sysimg_armv7a-14_r02.zip

sysimg_armv7a-15_r02.zip

sysimg_armv7a-16_r03.zip

sysimg_armv7a-17_r02.zip

sysimg_armv7a-18_r02.zip

sysimg_armv7a-19_r02.zip

samples-2.1_r01-linux.zip

samples-2.2_r01-linux.zip

samples-2.3_r01-linux.zip

samples-2.3.3_r01-linux.zip

samples-3.0_r01-linux.zip

samples-3.1_r01-linux.zip

samples-3.2_r01-linux.zip

samples-14_r02.zip

samples-15_r02.zip

samples-16_r01.zip

samples-17_r01.zip

samples-18_r01.zip

samples-19_r05.zip

platform-tools_r19.0.1-windows.zip

platform-tools_r19.0.1-linux.zip

platform-tools_r19.0.1-macosx.zip

build-tools_r17-windows.zip

build-tools_r17-linux.zip

build-tools_r17-macosx.zip

build-tools_r18.0.1-windows.zip

build-tools_r18.0.1-linux.zip

build-tools_r18.0.1-macosx.zip

build-tools_r18.1-windows.zip

build-tools_r18.1-linux.zip

build-tools_r18.1-macosx.zip

build-tools_r18.1.1-windows.zip

build-tools_r18.1.1-linux.zip

build-tools_r18.1.1-macosx.zip

build-tools_r19-windows.zip

build-tools_r19-linux.zip

build-tools_r19-macosx.zip

build-tools_r19.0.1-windows.zip

build-tools_r19.0.1-linux.zip

build-tools_r19.0.1-macosx.zip

build-tools_r19.0.2-windows.zip

build-tools_r19.0.2-linux.zip

build-tools_r19.0.2-macosx.zip

build-tools_r19.0.3-windows.zip

build-tools_r19.0.3-linux.zip

build-tools_r19.0.3-macosx.zip

tools_r22.6.2-windows.zip

tools_r22.6.2-linux.zip

tools_r22.6.2-macosx.zip

docs-19_r02.zip

sources-14_r01.zip

sources-15_r02.zip

sources-16_r02.zip

sources-17_r01.zip

sources-18_r01.zip

sources-19_r02.zip

google_apis-3-r03.zip

google_apis-4_r02.zip

google_apis-5_r01.zip

google_apis-6_r01.zip

google_apis-7_r01.zip

google_apis-8_r02.zip

google_apis-9_r02.zip

google_apis-10_r02.zip

google_apis-11_r01.zip

google_apis-12_r01.zip

google_apis-13_r01.zip

google_apis-14_r02.zip

google_apis-15_r02.zip

google_apis-16_r03.zip

google_apis-17_r03.zip

google_apis-18_r03.zip

google_apis-19_r04.zip

google_tv-12_r02.zip

google_tv-13_r01.zip

support_r19.zip

android_m2repository_r05.zip

google_m2repository_r07.zip

market_licensing-r02.zip

market_apk_expansion-r03.zip

google_play_services_3265130_r12.zip

google_play_services_4323030_r16.zip

usb_driver_r09-windows.zip

play_billing_r05.zip

https://dl-ssl.google.com/googleadmobadssdk/googleadmobadssdkandroid-6.4.1.zip

https://dl.google.com/gaformobileapps/googleanalyticsandroid_2.0beta5.zip

webdriver_r02.zip

gcm_r03.zip

support_r19.1.zip

6.3android sdk 22.6.2离线下载地址通过分析上面的地址,可以得到如下离线下载地址对应关系。6.3.1 tools(必须安装)

Android开发环境搭建

android sdk tools 、 andorid sdk platform-tools、 android sdk build-tools分别对应:

6.3.2 android 4.4.2 (api 19) (当前最新版本)

Android开发环境搭建

android 4.4.2 (api 19)已安装的部分分别对应离线下载地址:

6.3.3 android 2.2 (api 8) (可根据兼容性需求选择安装)

Android开发环境搭建

android 2.2 (api 8) 分别 对应离线下载地址:

6.3.4 extras android support library和google usb driver必须安装。

Android开发环境搭建

android support library和google usb driver分别 对应离线下载地址:

7 其他

7.1 adt22.6.2 新建一个android项目多出一个appcompat_v7项目appcompat_v7是google自己的兼容包,右键你的工程->properties->android,就会发现在library里面有import appcompat_v7,不能随便删除,删除后android工程会报错。建立android application的时候,只需要将minimum required sdk选择到android 4.0版本(即api 14),就不会在出现appcompat_v7这个内容啦。