天天看點

安卓環境搭建

【一 寫在前面】

環境搭建的順序是這樣

1.jdk&jre 安裝jdk會順帶安裝jre的,這一步是為了可以編寫和允許普通的java程式

2.eclipse java 的 ide,這一步是為了友善地開發java程式

3.cdt 是eclipse的一個插件,這一步是為了可以引入c++

4.adt 是eclipse的一個插件,這一步是為了管理安卓開發庫

5.adk 上一步是工具,這一步就是開發庫了,到了這一步你可以編寫普通的安卓程式

6.ndk 單有cdt還不行,它隻能編輯,不能編譯,這一步是為了可以編譯c++程式,然後在安卓中使用

這裡不需要使用cygwin這個麻煩的東西,我們使用新版本的ndk來編譯c++

【二 jdk的安裝】

jdk的最新版本是1.7,【重要】這裡需要下載下傳使用 1.6的jdk,jdk自動包含jre,使用1.7的jdkcocos的代碼會有"暫時性編譯錯誤"問題

下載下傳安裝都是一路next,下面的内容是安裝1.7之後降1.6的方法,直接安裝1.6的可以飄過

下載下傳位址:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html

安卓環境搭建

如果你像我一樣不幸,裝上了1.7,可以用下面的方法來恢複降到1.6

1.打開windows的preferences,把compiler compliance level 設定到1.6

然後會顯示讓你配置jre

安卓環境搭建

在配置jre中添加jre的目錄,然後標明

安卓環境搭建

這裡,我們在eclipse裡面設定好了jre6,以及編譯使用的jdk,但還不可以

接下來要設定一下你的項目,打開project properties,add library 然後next,接下來會要你選擇jre的路徑

安卓環境搭建

這裡我們直接選擇剛剛在windows preferences設定好的jre6,然後finish即可

安卓環境搭建

此時你會發現更多的紅叉叉,所有檔案都出現紅叉叉了,讓我們把他們消除掉,這次很簡單,剛剛重置jre的時候,吧安卓也重置掉了

安卓環境搭建

把安卓adk勾上就可以了

【三 安裝eclipse和cdt】

這裡我直接用這一個,帶cdt插件,已經有eclipse的同學可以去下載下傳一個cdt

eclipse解壓就可以直接使用了,這裡不墨迹

eclipse c++版本下載下傳位址 http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers-includes-incubating-components/indigosr2

【四 安裝adt】

兩種安裝方法,一種線上安裝,一種下載下傳安裝,網速問題,我傾向于下載下傳安裝。

注意,請下載下傳1.7及以上版本的adt,這裡使用1.8的版本

在help裡面,選擇install new software...

安卓環境搭建
安卓環境搭建

然後選擇add,如果是線上安裝,在location裡面填https://dl-ssl.google.com/android/eclipse/

(不行的話,把https改為http試試)

如果是下載下傳安裝,先把adt下載下傳到本地,然後按archive選擇adt的路徑,點 ok,勾上developer tools開始安裝

adt 1.8的位址:http://dl.google.com/android/adt-18.0.0.zip

ps。這個安裝需要一段時間.....不要以為它當機了,挂了,如果你的機器或者網絡不給力,讓你感覺到不耐煩

請不要強制關閉它....否則,你可能要看接下來的錯誤排除

安裝完畢之後重新開機eclipse,然後會提示你安裝adk

安卓環境搭建

如果你非常不幸安裝了1.6以及以前版本的adt,或者強制中斷了它的安裝....那麼你需要把它卸掉

安卓環境搭建

它将無法建立安卓項目...,而解除安裝,也是一個麻煩的事情

首先,需要把這個插件删除,在help的about找到對應的adt,然後删除

安卓環境搭建

接下來從軟體更新清單中,删除我們的adt

安卓環境搭建

【五 安裝adk】

安裝完adt之後,重新開機eclipse會提示你安裝adk,你可以指定路徑,或者下載下傳安裝

可以在這個位址下載下傳adk http://developer.android.com/sdk/index.html

如果是下載下傳的話,建議下載下傳2.1,他的相容性比較好,本地的話,指定adk解壓後的路徑即可

安卓環境搭建

【六 安裝ndk】

到這裡為止,我們已經可以使用eclipse來編寫安卓程式了,但我們的目的是用c++編寫cocos,要達到這個目的,還需要最後一步——ndk

使用ndk有兩個目的,第一個是将我們的c++代碼編譯成連結庫,這裡的連結庫是linux下的so或者a檔案,不同于windows的dll

第二個目的是jni,java需要通過jni來調用我們的c++代碼

下載下傳位址為:http://dl.google.com/android/ndk/android-ndk-r7-windows.zip

下載下傳完畢之後解壓,這裡給出最簡單的步驟,在編譯的過程中會碰到各種問題,這裡也将一一解答

首先我們要建立一個android項目

安卓環境搭建

使用最新版本的cocos2d-x,我們用他的helloworld來做試驗

安卓環境搭建

項目打開之後,,,,這裡發現一個錯誤,沒有seteglcontextclientversion這個方法,這裡,暫時把它注釋掉吧

看意思應該是設定opengl es的版本....反正預設的應該可以

安卓環境搭建

然後看到控制台輸出一句話

安卓環境搭建

這裡在application.mk加上app_platform :=android-4就可以了

安卓環境搭建

接下來我們要把ndk加進來,讓ndk來編譯我們的c++

安卓環境搭建

指定ndk-build.cmd來編譯我們的項目,下面的工作路徑将作為參數傳入給ndk-build.cmd,

我們選擇項目的路徑,它會自動編譯jni子目錄下的android.mk

安卓環境搭建

這時候如果是cocos2d-1.0.1-x-0.13.0-beta以及之前的版本,是可以進行編譯的,但如果是之後的版本,有可能出現如下錯誤

安卓環境搭建

android.mk引用了一個子產品,cocos2dx子產品,而ndk沒有找到它,是以報了這個錯,

之前的版本是直接包含cocos2dx子產品的android.mk的,是以不會報錯

而這裡使用了import,我們也可以使用之前版本的方法來包含它,但貌似import比之前的方法要更好一些

錯誤資訊提示我們,可以通過設定ndk_module_path環境變量,這裡很有可能設定錯誤

一般,一個android.mk包含一個或多個子產品,當你要import cocos2dx子產品時,

他會在這個路徑下% ndk_module_path\cocos2dx尋找android.mk檔案

是以我們編輯我們的builder

安卓環境搭建

添加ndk_module_path變量,注意要寫兩個路徑,用分号分開

d:\sdk\cocos2d-2.0-rc0a-x-2.0;d:\sdk\cocos2d-2.0-rc0a-x-2.0\cocos2dx\platform\third_party\android\prebuilt

因為cocos2dx還import了其他幾個module,第二個路徑制定了第三方的module,設定完就可以進行編譯了

安卓環境搭建

我用的是最新的2.0,有些頭檔案沒找到,一些類型也有問題....密密麻麻地近百個錯誤。。。

我們試着用低一點的版本吧

接下來又出現了一個找不到靜态庫的問題

安卓環境搭建

把<ndk>/sources/cxx-stl/gnu-libstdc++/libs/armeabi/目錄下的libgnustl_static.a

拷貝到obj/local/armeabi/libgnustl_static.a目錄下,解決

安卓環境搭建

最後生成的apk放在bin目錄下

ps.資源檔案需要放在assets下,adt會将它打包到apk中

簡介:09年入行,喜歡遊戲和程式設計,對3d遊戲和引擎尤其感興趣。 

版權聲明:本文版權歸作者和部落格園共有,歡迎轉載。轉載必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。

轉載:http://www.cnblogs.com/geniusalex/archive/2012/10/27/2742029.html