1 軟件下載
(1) JDK : http://www.oracle.com/technetwork/java/javase/downloads/index.html
(2) Eclipse :http://www.eclipse.org/downloads/
(3) Android SDK : http://developer.android.com/sdk/index.html
下載:installer_r22.6.2-windows.exe或android-sdk_r22.6.2-windows.zip
(4) ADT :http://developer.android.com/sdk/installing/installing-adt.html
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,如下圖:
確定之后,勾選developer tools,下一步:
然后再點下一步,一直繼續。
3 運行eclipse3.1 打開eclipse配置android sdk位置
3.2
切換透視圖
我們先切換透視圖到java,找到右上角的透視圖按鈕,在彈出的窗口中選擇java,確定。
這時工具欄發生了小小變化,多出了兩個小按鍵:左邊的就是sdk manager,右邊的是android虛擬設置管理器,即avd(android virtual device)manager。我們馬上就要操作它。
注:在java ee視圖下沒有工具欄的android圖標。3.3 創建一個設備
avd(android virtual device)就是android應用程序運行的虛擬設備。建立的android應用要運行,必須創建avd,每個avd上可以配置很多的運行項目。
點擊工具欄上的類似手機的一個小按鈕,彈出對話框:
點new,我們來新建一個設備:sd卡會在系統里生成一個同等大小的文件,用來模擬sd卡,因此不宜設置得太大。
點擊確定,新建成功。
4 創建hello world項目
點擊file -> new -> android application project
填好應用名稱和相應信息,包名一般是網站域名倒過來寫,包名一定要唯一,否則就被認為是同一個程序。目標版本是兼容最高的版本。點擊next:
mark this project as a library:為其他應用程序做基礎,作為一個包存在。
以上是設置啟動程序的圖標。
上是創建一個應用程序的模板選擇。
點擊finish,一個項目創建完成。
完成后,project explorer窗口有了一個helloworld的東東。
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:
第一次啟動可能需要幾分鐘,請耐心等待:
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文件查看各文件名,只需該文件名填入到這個下載地址即可完成下載:
https://dl-ssl.google.com/android/repository/******.zip (后面這個******.zip是根據你需要下載的文件進行對應填充)。
查看SDK Manager Log發現每次更新時,SDK Manager 都下載以下幾個xml文件:
http://dl-ssl.google.com/android/repository/repository-8.xml
http://dl-ssl.google.com/android/repository/addon.xml
https://dl-ssl.google.com/android/repository/addon-6.xml
編寫一個簡單程序,將其中的名為url的標簽對應的內容,拼接在路徑 http://dl-ssl.google.com/android/repository/后面,即可得到所有需要的安裝包的下載地址,然后可以用迅雷等下載工具進行下載,將下載好的包拷貝到sdk根目錄下的temp文件夾內,再點安裝時,即可直接安裝,節省大量時間。
6.2 解析地址程序
用到dom4j-1.6.1.jar庫,請自行下載。
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 sdk tools 、 andorid sdk platform-tools、 android sdk build-tools分別對應:
http://dl-ssl.google.com/android/repository/tools_r22.6.2-windows.zip
http://dl-ssl.google.com/android/repository/platform-tools_r19.0.1-windows.zip
http://dl-ssl.google.com/android/repository/build-tools_r19.0.3-windows.zip
6.3.2 android 4.4.2 (api 19) (當前最新版本)
android 4.4.2 (api 19)已安裝的部分分別對應離線下載地址:
http://dl-ssl.google.com/android/repository/docs-19_r02.zip
http://dl-ssl.google.com/android/repository/android-19_r03.zip
http://dl-ssl.google.com/android/repository/samples-19_r05.zip
http://dl-ssl.google.com/android/repository/sysimg_armv7a-19_r02.zip
http://dl-ssl.google.com/android/repository/google_apis-19_r04.zip
http://dl-ssl.google.com/android/repository/sources-19_r02.zip
6.3.3 android 2.2 (api 8) (可根據兼容性需求選擇安裝)
android 2.2 (api 8) 分別 對應離線下載地址:
https://dl-ssl.google.com/android/repository/android-2.2_r03-linux.zip
https://dl-ssl.google.com/android/repository/samples-2.2_r01-linux.zip
https://dl-ssl.google.com/android/repository/google_apis-8_r02.zip
6.3.4 extras android support library和google usb driver必須安裝。
android support library和google usb driver分別 對應離線下載地址:http://dl-ssl.google.com/android/repository/support_r19.1.zip http://dl-ssl.google.com/android/repository/usb_driver_r09-windows.zip
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這個內容啦。