2012年3月21日 星期三

Eclipse+Android SDK/NDK 開發環境的過程 (1/2)

後記: 

02/11/2014, 我重灌電腦, 再度安裝 andriod 開發環境, 發現 andriod 官網已經把下述之 Eclipse IDE 跟 SDK (step 7~21) 整合成一個 adt-bundle 了, 下載該包後, 解壓縮到硬碟任何地方即可以. (但前提 JRE 還是要先裝), 我沒有再新建專案, 去測試剩餘的步驟的有無差異. 
參見再度安裝 andriod 開發環境



-------------------
Eclipse+Android SDK/NDK 開發環境的過程

以下為我記錄第一次就搞定 Eclipse + Android SDK/NDK 開發環境的過程

時間為 2012/3/21 當時下載的最新版軟體及 SDK

其實在參照人家分享的過程中, 我發現

1. Cygwin 根本不用裝到 devel 整個套件
2. 不必修改任何 Cygwin 的 bash profile 檔案, 就可以讓 ndk 正常運作, 可
   能是我習慣 "不用多做的事情盡量不要做" 吧, 所以試著少做一些看看...


以下:
p.s. 這是記錄日誌, 不是教學~
--------------------------------------------------------------------

1. 下載 Java SE(Standard Edition) Development Kit
   url: http://www.oracle.com/technetwork/java/javase/downloads/
   ref: jdk-7u3-windows-i586.exe (84.1MB)

2. 下載 Eclipse IDE for Java Developers
   url: http://www.eclipse.org/downloads/
   ref: eclipse-java-indigo-SR2-win32.zip (128MB)

3. 下載 Android SDK
   url: http://developer.android.com/sdk/
   ref: android-sdk_r16-windows.zip (28.1MB)
        installer_r16-windows.exe (28.1MB)

4. 下載 Android NDK
   (*** only needed for developing C/C++ native code libraries ***)
   url: http://developer.android.com/sdk/ndk/
   ref: android-ndk-r7b-windows.zip (76.6MB)

   NOTE: 開發 NDK 還需要有 GNU 的 bash 和 make 工具, Windows 下可以安
         裝 Cygwin 環境

   下載 Cygwin (only needed for NDK)
   url: http://cygwin.com/install.html
   ref: setup.exe (681KB)



--------------------------------------------------------------------

5. 安裝 JDK
   ref: jdk-7u3-windows-i586.exe

6. 可以使用預設路徑, 在安裝提示步驟下, 選 'Next' 或 'Continue'...,
   直到, 當詢問安裝 JavaFX SDK, 選 'Cancel', 當跳到 JDK 註冊網頁, 直接
   關閉瀏覽器

   P.S. 安裝完成之後,可以在檢查 JDK 是否安裝成功

   1) 執行命令列 cmd
   2) javac HelloWorld.java
   3) java HelloWorld

--------------------------------------------------------------------

7. 安裝 Eclipse
   ref: eclipse-java-indigo-SR2-win32.zip

8. 免安裝, 直接解開到硬碟的一個固定地方

--------------------------------------------------------------------

9. 安裝 Android SDK
   ref: android-sdk_r16-windows.zip as (1)
        installer_r16-windows.exe   as (2)

10. 用 (1) 免安裝, 直接解開到硬碟的一個固定地方
    用 (2) 可以使用預設路徑, 在安裝提示步驟下, 選 'Next' 或 'Continue'

11. 執行 Andriod SDK manager

12. 可以在預設選項(lastest platform)下, 再勾選下面的 packages

    Tools\Andriod SDK Platform-tools (for more tools for application
                                      development)
    Andriod 2.3.3 (API 10)           (for 市佔率高的 andriod 版本)
    Andriod 2.2 (API 8)              (for 市佔率高的 andriod 版本)

    p.s. 1. 在 Andriod x.x (AP xx) 裡面, 基本上標配有
            SDK platform
            Samples for SDK
            Google APIs by Google Inc. (for accessing to the Google Maps)
            除 xxx by Google 外, 各手機/硬體公司訂製的(非標準) packages
        可以不選, 如 xxx by HTC, xxx by Motorola, xxx by LGE etcs

            http://developer.android.com/sdk/installing.html#which

         2. 可以事後再執行 Andriod SDK manager, 新增或更新 packages

13. 點 'Install xx packages...' 按鈕, 下一個畫面選 'Accept All' (授權)
    後, 按 'Install', 開始下載/安裝

--------------------------------------------------------------------

14. 安裝 ADT (Android Development Tool) for Eclipse IDE

15. 執行 Eclipse.exe (在 step 8 的目錄下)

16. 會詢問 Workspace 路徑, 建議選擇一個非 user 文件夾的一個固定位置,
    並勾選下次不要再詢問

17. 打開 menu -> 'Help' -> 'Install New Software' 對話盒

18. 按 'Add...' 按鈕, 在 Add Repository 對話盒下
    Name: 隨你高興
    Location: http://dl-ssl.google.com/android/eclipse

    按 OK, 離開回到 Install 對話盒, 其狀態列顯示
   
    Fetching children...(xx%)

19. 下載完成後, tree list 會有 Developer Tools 節點出現, 打開節點, 下
    面有四個 Andriod xx 項目, 全選, 然後按 'Next'...'Finish' 後, 開始
    下載/安裝

20. 完成後, Eclipse 會重新開啟, 開啟後提示設置 Andriod SDK

21. 選擇 'Use existing SDKs'
    Existing Location: 選 step 10 安裝目錄下的 android-sdk, 如
    C:\Program Files\Android\android-sdk
    按 'Next'...'Finish'

    p.s. 如果 step 20 沒有提示或事後, 也可以
         打開 menu -> 'Window' -> 'Preferences' 對話盒, 左側 tree list
     選擇 Android, 設置 SDK Location

--------------------------------------------------------------------

22. 設置 Android Virtual Device (AVD) 也就是 Andriod 模擬器

23. 用 (1) 執行 Eclipse.exe (在 step 8 的目錄下) - menu -> 'Window' ->
    'ADV manager'
    用 (2) 執行 AVD Manager.exe (在 step 10 安裝目錄下)

24. 按 'New...' 按鈕, 出現 Create new AVD 對話盒

    Name:    隨你高興 (建議名字後面加上 Andriod 作業系統的版本代號)
    Target:  選一個 (建議用當前市場上最普及的 Android 手機版本, 或手上
             開發實機的版本)
              http://developer.android.com/resources/dashboard/platform-versions.html
    SD Card:  依需求
    Snapshot:
    Skin:     預設或依需求
    Hardware: 預設或依需求

--------------------------------------------------------------------
(step 25~31 是測試編譯執行一個 hello app, 可省略)

25. 測試 Hello World

26. 執行 Eclipse.exe

27. menu -> 'File' -> 'New' -> 'Project...' 出現 New Project 對話盒,
    點開 'Android' 節點, 選中之下的 'Android Project' 子選項, 按 'Next'

28. Create Andriod Project:
    Project Name: 隨你高興 (為程式的顯示名字)
    選 'Create new project in workspace', 按 'Next'

29. Select Build Target:
    勾選適當的平台, 按 'Next'

30. Application Info:
    修改 Package Name: com.你的組織單位英文名稱.你的專案英文名稱
    其他依需求, 填好後, 按 'Finish' 會產生專案檔案

31. menu -> 'Run' -> 'Run', 開始編譯, 成功後會呼起 AVD, AVD 啟動後
    該程式(名字為 Project Name) 會直接執行

    畫面如下:



--------------------------------------------------------------------

32. 安裝 Android NDK (僅開發 C/C++ libraries 需要)

                               *****

33. (Windows only) 設置 Android NDK 需要的環境 Cygwin
    ref: cygwin's setup.exe

34. 執行後, 選 'Install from Internet'

35. Root Directory 可以使用預設路徑

36. Local Package Directory 選擇一個地方放下載的東西
    NOTE: 如果此次完成後, 那下次可以 'Install from Local Directory'

37. Choose A download Site 選擇最近的網站

38. Select Packages:
    找尋下面的 packages

    Base/bash or Shells/bash    (預設此 package 是要安裝的版號)
    Devel/make            (預設此 package 是不安裝的)

    點該 package 'Skip' 前面 refresh 圖示, 讓 'Skip' 變成一個要安裝的
    版號, 點 'Next' 按鈕

39. 當詢問 Resolving Depencies, 確認一下 Select required packages 有勾
    選後, 點 'Next' 按鈕, 開始下載/安裝...

40. 安裝完成後, 執行 Cygwin, 在命令列下輸入 make -v 看看是否 make 安裝
    正確

                               *****

41. 直接解開 android-ndk-xx-windows.zip 到硬碟的一個固定地方

--------------------------------------------------------------------
(step 42~45 是測試編譯一個 libhello-jni.so, 可省略)

42. 測試編譯 hello-jni 的 C library

43. 執行 cygwin.bat (step 35 安裝目錄下)

44. 切換當前目錄到 C:\xx\android-ndk\samples\hello-jni

    NOTE: 以上 C:\xx\android-ndk 為 step 41 的位置, 以下皆假設為
          c:\xx\android-ndk, 請依真實情況修改路徑名

    命令列提示字元 $ 下, 請輸入
    cd /cygdrive/c/xx/android-ndk/samples/hello-jni
    後, 按 Enter 鍵執行

    如果正確, 當前目錄提示會改為以上路徑

45. 執行 ndk-build

    命令列提示字元 $ 下, 請輸入 /cygdrive/c/xx/android-ndk/ndk-build
    後, 按 Enter 鍵執行

    如果正確, 此時 NDK 開始編譯 c 並做出 so (為 library), 輸出訊息如下

    Gdbserver     : [arm-linux-androideabi-x.x] libs/armeabi/gdbserver
    Gdbsetup      : libs/armeabi/gdb.setup
    Compile thumb : hello-jni <= hello-jni.c
    SharedLibrary : libhello-jni.so
    Install       : libhello-jni.so => libs/armeabi/libhello-jni.so

以上到目前為止, Andriod SDK + NDK 環境已經安裝並測試編譯內部的範例.

繼續...Eclipse+Android SDK/NDK 開發環境的過程 (2/2)

沒有留言:

張貼留言