之前做了一個基於ffmpeg的軟解播放器,熟悉了NDK開發的配置環境過程,但是由於太忙一直沒有時間寫筆記。
首先,介紹一下在這里所參與協作的軟件包:
1、 JDK: 這個軟件被Eclipse依賴。
2、 Eclipse: 也就是我們所需要配置的目標IDE環境了。版本可以選擇Eclipse SE版,也可以選擇J2EE版。
3、 Android SDK: 也就是Android開發所需要的Java包以及一些編譯工具等。
4、 Android NDK: 包含了一些頭文件以及交叉編譯器。
5、 ADT(Android Development Tool): 這是Eclipse的Android開發插件。這個插件是關聯Eclipse,NDK,SDK的紐帶。
一、安裝JDK
從Oracle官網下載JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html
Windows:
下載好了之后,安裝到你想安裝的文件夾里。比如我是安裝在 D:\ProgramFiles\Java 中。
然后右鍵桌面的“我的電腦”(XP) "計算機“(Win7/8) -> ”屬性“ -> ”高級系統設置“ -> "高級” -> "環境變量“ -> "系統變量” 。
如下圖所示。
然后在系統環境變量 中,
新建 變量名為JAVA_HOME,內容為
D:\ProgramFiles\Java //這里替換成你的JDK安裝的路徑
新建 CLASSPATH,內容為
.;%JAVA_HOME%\lib;
編輯 Path, 在尾巴上添加
%JAVA_HOME%\bin;
//注意 上面是編輯Path,而不是新建Path,新建了就悲劇的覆蓋了你原來的Path,你的控制台命令會都無法使用的。
//注意 如果Path變量的最后一個項沒有分號,則要添加一個分號
這樣就 配置好了JDK了! 驗證一下的話,Win+R輸入CMD,然后在控制台中輸入java -version,如果提示了Java版本,那么JDK就配置好了。
Linux:
在linux的話,下載了JDK之后,解壓到你想解壓的路徑
比如我是 解壓到 /usr/lib/中。假設我解壓之后的文件夾的名字是 jdk1.7.0_45。
然后就是配置環境變量了。
在 /etc/profile 或 ~/.bashrc 中添加以下代碼
export JAVA_HOME=/usr/lib/jdk1.7.0_45
#上面換成你的JDK的解壓路徑 export CLASSPATH=.:%JAVA_HOME%/lib export PATH=$PATH:%JAVA_HOME%/bin
然后在終端,執行
source ~/.bashrc source /etc/profile
#上面你是在哪個文件中編輯的就執行哪個命令
在Ubuntu 12以及以后版本的Ubuntu中還需執行以下命令來配置默認的Java版本。
sudo update-alternatives --install /usr/bin/java java $JAVA_HOME/bin/java 300 sudo update-alternatives --install /usr/bin/javac javac $JAVA_HOME/javac 300 sudo update-alternatives --install /usr/bin/jar jar $JAVA_HOME/bin/jar 300 sudo update-alternatives --install /usr/bin/javah javah $JAVA_HOME/bin/javah 300 sudo update-alternatives --install /usr/bin/javap javap $JAVA_HOME/bin/javap 300
然后執行以下代碼
sudo update-alternatives --config java
這時候,終端會列出所有Java版本,然后你選擇這個版本。
二、 安裝Eclipse
Eclipse安裝非常簡單,windows下直接下載解壓就好了,linux是也是如此。當然Ubuntu也可以從軟件中心安裝。至於從Eclipse官網下載的版本,怎樣在Ubuntu中做得像從軟件中心安裝的那樣的效果 的話,可以參考
http://blog.csdn.net/gavin_dinggengjia/article/details/7364375
在Ubuntu 13.10中 下拉菜單失效的問題,可以參考
http://my.oschina.net/kinsomc/blog/178997
三、 安裝Android SDK
從 http://developer.android.com/sdk/index.html#ExistingIDE 中下載相應的SDK版本。
注意,這里有 ADT Bundle 和 SDK Tools Only兩個版本。其中ADT Bundle中集成了一個Eclipse,而且這個集成的Eclipse安裝好了ADT插件。
SDK Tools Only只有SDK下載工具,連SDK都沒有。
我的建議是下載 SDK Tools Only,然后再運行SDK工具在線下載。如果你網絡不好,或者嫌配置Eclipse麻煩,那就選擇ADT Bundle。我的Eclipse由於配置了很多其他的如J2EE等工具,所以選擇在現有的Eclipse中集成。
在SDK文件夾下的tools文件夾里,有一個 android.bat 或者 android 文件。
windows下直接雙擊android.bat,即可打開SDK Manager。
linux下在終端中,cd到tools文件夾,執行 ./android 即可打開SDK Manager。
如下圖所示,選擇最新的build-tools、platform-tools和一個版本的SDK安裝。
SDK中的SDK Platform、google APIs、source for sdk以及documentation建議安裝。SDK中的ARM EABI System Image和X86 Atom System Image就不要了。它的作用是Android虛擬機用於在電腦上擬真Android設備,真的是卡出翔。建議開發Android先買台Android設備。
選擇好了之后,單擊右下角的 Install 按鈕。如果有多余的陳舊版本,點擊Delete 按鈕。
四、安裝Android NDK
從 http://developer.android.com/tools/sdk/ndk/index.html 中選擇相應版本進行下載。
注意了,在windows系統下,自從ndk r9版本之后,就不再需要使用cygwin來模擬linux命令行環境。
這里不再說明使用cygwin進行配置的過程。因為之前我都是在linux下開發,對這種模擬的方法實在是嗤之以鼻,因此也沒有學習過。
解壓ndk壓縮包之后,比如我解壓到 D:\ProgramFiles (windows) 或 ~/lib/ (linux)中。然后我重命名解壓后的 文件夾的名字為 androidndk。
在windows下配置環境變量:
新建環境變量 NDKROOT ,值為 D:\ProgramFiles\androidndk 。//值換成你的ndk根目錄位置 注意這個變量名一定要是NDKROOT,至少在NDK r9版本的時候是這樣
編輯Path環境變量,在它的尾巴上 添加 %NDKROOT%; 。
在linux下配置環境變量:
在 /etc/profile 或 ~/.bashrc 中添加以下代碼
export NDKROOT=~/lib/androidndk
#上面換成你的NDK根目錄 export PATH=$PATH:$NDKROOT
然后執行
source ~/.bashrc source /etc/profile
#上面你是在哪個文件中編輯的就執行哪個命令
五、安裝ADT
如果前面的SDK下載的時候決定使用ADT-Bundle版本的不需要看這一節。
打開Eclipse,選擇主菜單 Help -> Install New Software
在彈出的對話框中 單擊 Add 按鈕,在彈出的對話框中
Name項的內容為 ADT
Location項的內容為 https://dl-ssl.google.com/android/eclipse/ 或者 http://dl-ssl.google.com/android/eclipse/ 。
然后單擊OK
如果能連上網的話,等待Install對話框中間有內容可選擇,即 Develop Tools和NDK Plugins。全部選中,然后點擊 Next> 。
然后不選的next,遇到什么需要Accept的全部accept。
等待漫長的下載就好了。然后重啟Eclipse。
六、 配置ADT
在上一步里,重啟了Eclipse后不用管彈出的錯誤信息和提示對話框,全部點忽略或者關閉。然后單擊菜單 Window -> Preferences
在彈出的Preferences對話框中,找到
Android項,設置好SDK路徑,然后Apply。對於使用ADT-Bundle的人來說,不需要設置SDK路徑,因為已經設置好了。
在Android項的子項,NDK中,設置好 NDK路徑,然后Apply。
七、大功告成了!