2013年1月5日 星期六

第一個 Android 程式 ( HelloWorld )

讓我們開始來測試第一支 Android 程式吧,以圖解的方式來為各位解釋:

點選工具列 File | New | Project
點選 Android Application Project
應用程式開發設定


  • Application Name 為應用程式的名稱,此名稱會顯示在 Android 系統應用程式名稱以及Google Play 上面。
  • Project Name 是專案名稱,專案的整個檔案放在 workspace 底下,專案名稱不能重複以便識別。
  • Package Name 則是套件的整個路徑跟名稱(輸入Application Name 後就會自動帶出 Project Name 及 Package Name,也可以依照需求自行修改成不一樣的名稱)
實際上由於各家硬體設備搭載的 Android 系統以及目前 Google 官方 Android 系統的更新,還有開發者撰寫該程式使用的版本都是不一致的,因此 Android 的開發者必須面臨許多版本相容性的問題,以下設定就是在做相關版本宣告的處理。
  • Minimum Required SDK 「宣告」您的應用程式最低支援的 Android 系統版本,越低的版本代表支援越多的設備,也代表著只能使用比較少的功能,如果設備的 Android 系統版本低於此設定,則無法安裝該應用程式。選擇 API 8 以及更新的版本可能會有接近 95% 的相容性,基本上 API 8: Android 2.2 是目前建議的預設值。
  • Target SDK 這裡是選擇應用程式可能在最高的 Android 系統下執行的版本,代表開發者「宣告」已經測試過此版本。因為新版本的 Android 系統會針對較舊版本撰寫的程式去做相容性的調整(可能是畫面或者效果上的微調,或許會造成不預期的結果或者效能上的問題),如果您有測試過此版本沒問題,指定 Target SDK,不要讓系統去啟動相容性修正。
  • Compile With 指定當程式撰寫完要編譯的時候,要用哪一個版本去編譯,基本上這邊可以選擇的版本,是根據您當初透過 Android SDK Manager 安裝時有勾選的版本而定,一般而言都會使用最新下載的版本去安裝。
這三項的版本究竟有何差異?

預設的情況下 Compile With > Target SDK > Minimum Required SDK,如同此文章撰寫時安裝的情況下 ( 17 > 16 > 8 ),基本上 Minimum Required SDK 既然是代表最低支援的版本,所以不會有 Target SDK 或 Compile With 設定的版本小於 Minimum Required SDK 的情形發生,因為您一定要用該版本或者更新的版本去測試及編譯才能知道最低支援的版本是哪一個。

至於 Target SDK 和 Compile With 就沒有特定誰大誰小的問題,我可以宣告此專案在 API 17 下有執行過沒問題,但是實際編譯使用 API 16 的版本來編譯,因為程式撰寫時不一定會呼叫 API 17 最新版本的才有的功能,所以 Target SDK 可以大於 Compile With,當然我們可能在API 16 下次試過該程式,可是實際上用 API 17 來編譯,這種情形是很常見的,因為 Google 不斷地推出新版本的 SDK,而我們可能在程式開發初期及硬體添購初期還沒有這個版本,甚至硬體廠商都還沒有人推出該版本的 Android 設備,所以預設情況下來說也是 Compile With > Target SDK。

  • Theme Android 程式的佈景主題設定,預設或者選 None 自行修改都可以。

專案的設定,點選 Next 繼續設定細節
設定應用程式圖示(可以是圖片、圖示、文字),自行設定看看不同的效果,可以日後再進行修改。

針對 Activity 設定,有多種格式可以選擇,基本上選擇預設的空白(BlackActivity)的就可以了,其他的只是幫您寫好的參考範例,有一些範例會要求比較新的 SDK 版本才能編譯,需要注意。
Activity 設定頁面
這裡是設定程式第一個頁面(Activity)的主程式名稱及布局 (Layout) 設定檔的名稱,預設是MainActivity.java 以及 activity_man.xml(設定畫面中,副檔名省略)。

Navigation Type 是在 Android 3.0 (API 11) 以後才有的功能,一般程式比較少直接套用此功能,因此預設也是 None。

最後點選 Finish 專案就產生了,此處我們先不瞭解程式碼,直接針對專案進行執行。

點選要執行的專案名稱 HellWorld 然後點選 Run 的圖示,Run As 指定為 Android Application,這樣就可以執行。
直接在專案名稱按右鍵,或者工具列上面,也有 Run As 的選項。
指定要由哪個裝置來執行,此處就是我們之前設定好的模擬器。
Hello world! 執行結果

由於 Android 程式開發不同於一般 Java 程式開發,需要先了解一些架構上再進行開發比較會有概念,因此我們此處先簡單的介紹,確定開發環境上不會有甚麼問題,日後我們再另外寫文章來介紹詳細的 Android 架構。

此外,如果有遇到開啟第一個專案後,如果有跳出以下錯誤訊息

EGit could not detect where Git is installed

Check Home Directory C:\Users\使用者名稱
基本上只是因為沒有安裝 EGit 還有設定環境變數造成的問題,實際上如果沒有用到「版本控制」的話可以不用理會,左下角 Do not warn again if Git cannot be found 以及 Do not show again 打勾點選OK後就不會再跳出此訊息,日後若有需要再進行安裝並且設定就好了。

沒有留言:

張貼留言