2013年7月3日 星期三

匯入程式發生@Override編譯錯誤的解決方法

[Android]匯入程式發生@Override編譯錯誤的解決方法


原來Eclipse的編譯器是預設在1.5版,Java 1.5的編譯器預設是對父類別的方法進行覆寫(Override),發展到Java 1.6以後則開始使用介面的方法,所以如果還是以Java 1.5的編譯器來編譯的話,自然就會出現錯誤啦。

只要修改一下eclipse的設定就可以解决這個問題:

Windows-->Prefereces-->Java-->Compiler在右邊的Compiler compliance level設定為1.6即可(或試試更高版本)。
修改EclipseJava編譯器 

2013年7月2日 星期二

安裝 Android 程式

資料來源:http://web.nchu.edu.tw/~jlu/cyut/android/prog-apk.shtml

程式開發完了,也在手機模擬器跑過沒問題了,可是我能不能把開發好的程式安裝到真實的手機上呢?想把開發好的程式安裝到手機上分成兩個主要的步驟, 一個是將成是打包成 APK(Android application package),然後利用 USB 或者上傳到 Android Market 來安裝。
所謂的 APK 檔是一個包含程式本身以及相關的資源檔所形成的檔案,在本文件中,我們會說明產生 APK 檔的步驟,對於想進一步了解 APK 檔的讀者,也許有興趣 看看 認識、把玩 APK 檔。 再進一步執行下列步驟之前,請先確定你已經根據 安裝 文件 正確的安裝開發環境,其中 以 JAVA_HOME 和 PATH 這兩個環境變數請在仔細一次;以作者將 JDK 安裝於 c:\jdk 為例,JAVA_HOME 必須是 c:\jdk,而 PATH 的內容必須包含 c:\jdk\bin
  1. 啟動 Eclipse且程式的專案(本例為 Hello1)是開啟的狀態下,點選 File --> Export,然後如下畫面選擇 Export Android Application 之後,按 "Next>" 按鈕。
  2. 為了確保降低資訊安全上的顧慮(例如,內含病毒碼),Google 要求所有的 apk 檔都必須經過電子簽章簽署之後,才能被使用。 雖然有了電子簽章的機制可以比較容易保證不會有惡意的第三者(有興趣的讀者,請自行參考資訊安全相關的文件),但是並不能保證 apk 檔案內不包含病毒碼;實際上,過去已經發生過惡意的程式在 Android Market 上出現,但是這些程式也被 Google 移除下架。 由於要產生必要的電子簽章,所以如果你在 Eclipse 下是第一次產生 APK 檔,那麼你必須如以下畫面般產生新的 "key store"; 第二次以後,只需要使用現有的 key store 即可。
  3. 產生 key store 的步驟如下:請在如下的畫面中,輸入任意但是好記的 alias 名稱;一個 key store 中可以有多個 alias,而一個 alias 大概可以想成是一個電子簽章,因此除了密碼的部分是在作必要的保護之外,其它就填入代表你或者你的單位的相關資料。

  4. 如下圖所示,請選擇產生的 APK 檔所放置的地點後,按下 "Finish" 按鈕之後產生 apk 檔。
  5. 有了 apk 檔,就可以開始安裝了。如果你還沒有安裝手機供應商的 USB 驅動程式,建議你先安裝;以 HTC 而言,請到 HTC 官網下載 手機的 USB 驅動程式,這個驅動程式包含在一個名為 HTC Sync 的軟體內。假設你已經安裝好了驅動程式,請利用 USB 連接你的手機到電腦, 然後在命令提示字元視窗輸入 adb devices,你應該可以看到如下的畫面:

    如果 adb 指令無法執行,請將 PATH 環境變數加上 f:\AndroidSDK\platform-tools 目錄或者到該目錄執行 adb 指令。(adb 是 android debug bridge 的縮寫)如果你熟悉 Unix/Linux 的指令,你也可以以上畫面成功之後,執行 adb shell 命令, 該命令會讓你進入手機的 shell(知道嗎?其實 Android 的核心是 Linux);從如下畫面中,你可以輸入 ls 指令來查看 有哪些檔案,你可以玩玩看;畫面中呈現的是手機模擬器的 device;另外,手機 SD 卡的目錄大多是 /sdcard

    一旦確定手機與電腦正確連結之後,請在命令提示字元視窗內,(若 apk 檔的名稱是 HelloWorld.apk)輸入下列指令完成安裝:
    adb install HelloWorld.apk

解除安裝程式:

一般來說,官方提供的應用程式是無法解除安裝的,除非該手機已經被 root 過;什麼是 root 過的手機,這已經超出本教材 的範圍,有興趣的讀者請自行 Google。可以解除安裝的程式,都是屬於使用者自行安裝的;解除安裝的方式有下列兩種:
  • 請在手機上,依序執行"設定" --> 應用程式--> 管理應用程式,然後選取希望解除安裝的程式進行解除安裝。
  • 如果是從 Market 下載的,也可以從 Market 中的"我的應用程式"中解除安裝。

將程式上傳至 Android Market:

到目前為止,我還沒開發出一個我認為值得上傳的程式,因此這裡並無法提供完整的過程。不過,目前收集到比較有用的資訊如下:
  • 若想上傳程式到 Android Market,請先到 開發人員登錄 網頁去註冊;註冊需要繳交 25 美金,而且必須經由 Google Checkout 付費。
  • 根據目前收集到的資料顯示(有可能不正確,也可能過期了),中國信託、台北富邦、台新、渣打、華南、國泰世華、新光和台企銀 的Visa金融卡是可以在 Google Checkout 上付費的。

2013年7月1日 星期一

InstallAndroid

InstallAndroid
安裝 Android 開發工具

Part1:開發環境建立要建立Android開發環境需要安裝三個套件,分別為Java、Eclipse和Android SDK,Java是Android應用開發的程式語言,而Eclipse套件為其編輯環境,Android SDK為Android開發工具。接著利用Eclipse安裝外掛套件ADT Plugin,再來下載安裝所需的Android版本,即完成整個開發環境。
Java SEOracle官網下載JDK,並將其安裝。安裝完成會出現註冊的頁面,直接關掉即可。
描述: C:\Users\ccprog\Desktop\1.1-1.png
描述: C:\Users\ccprog\Desktop\1.2.jpg
 
EclipseEclipse官網下載Eclipse IDE for Java,若有需開發J2EE的話,可以選擇下載Eclipse IDE for Java EE Developers,並將其安裝。若對Eclipse覺得陌生,可以參考張仁峰的Eclipse簡介與教學 [1]。
描述: C:\Users\ccprog\Desktop\1.2.jpg
Android SDKAndroid Developers下載Android SDK,並將其安裝。
描述: C:\Users\ccprog\Desktop\1.3.jpg
在安裝的過程中,若已安裝JDK,但卻出現系統偵測不到JDK的錯誤,則需要額外設置系統變數,設置過程稍微繁瑣,請多留心。
描述: C:\Users\ccprog\Desktop\err.jpg
設置系統變數步驟如下:
  1. 於我的電腦按下滑鼠右鍵點選內容
描述: C:\Users\ccprog\Desktop\P1.jpg
  1. 點選進階系統設定 -> 進階 -> 環境變數
 
描述: C:\Users\ccprog\Desktop\P2.jpg
  1. 在系統變數按下新增,接著會出現一個視窗,在變數名稱欄位填上java_home,而在變數值欄位填上C:\Program Files\Java\jdk1.7.0_05 (JDK的安裝位置和版本若不同請自行修改),並按下確定即可正常安裝Android SDK。
描述: C:\Users\ccprog\Desktop\P3.jpg
ADT Plugin執行Eclipse,在設置workspace的畫面直接按下OK即可,第一次執行可選擇workbench跳過軟體介紹。於HELP內點選Install New Software。
描述: C:\Users\ccprog\Desktop\a1.jpg
點選右上的Add按鈕會出現一個視窗,在Name欄位的名稱自取,而在Location欄位上打上:http://dl-ssl.google.com/android/eclipse,並按下OK。
描述: C:\Users\ccprog\Desktop\a2.jpg
此部分需稍待片刻,直到出現Developer Tools時,再點其左邊的三角型將其展開,勾選DDMS和ADT(視需求也可直接勾選Developer Tools),按下NEXT,接著同意license將其安裝。
描述: C:\Users\ccprog\Desktop\A3.jpg
安裝過程中可能出現安全性警告,按下OK即完成安裝ADT外掛套件。
描述: C:\Users\ccprog\Desktop\E4.jpg
 
下載安裝Android開發版本
執行Eclipse,於Window內點選Android SDK Manager。
描述: C:\Users\ccprog\Desktop\B0.jpg
勾選所需的開發版本、Tools和Extras按下Install。
描述: C:\Users\ccprog\Desktop\B1.jpg
點選Accept All後再按下Install即可開始下載安裝。在安裝過程中若出現存取被拒的錯誤,其為權限不足所造成,使用系統管理員身分執行Eclipse並重覆以上步驟即可正常下載安裝。
描述: C:\Users\ccprog\Desktop\E3.jpg
 
建立AVD
執行Eclipse,於Window內點選 AVD Manager,接著於右上點選New創造一個模擬器。
描述: C:\Users\ccprog\Desktop\V1.jpg
Name欄位為此模擬器的名稱,Target欄位選擇模擬器的開發版本,接著按下Create AVD即可創造出模擬器。
描述: C:\Users\ccprog\Desktop\V2.jpg
接下來需將其更新,選擇一個模擬器後按下右方的Start,再點選Launch如,系統會開啟模擬器,在開啟的過程中會花費許多時間,所以在程式開發時,不將模擬器關閉,繼續運行可有效節省重開模擬器的時間,更多關於建立AVD的細節,可參考孫傳雄Android教學網站內的如何安裝Android模擬器 [2]。
描述: C:\Users\ccprog\Desktop\V3.jpg

Part2:Android 操作上手在此部分將分別簡介如何建立Android 程式、如何將專案運作於模擬器上及如何使用既有專案匯入。目前最迅速的開發方式建議為匯入既有專案,因為很多程式早已有人開發出來,只要尋求最接近我們需要的程式再加以修改成自己的程式即可。
2.1建立Android程式 
建立Android專案方式如下:
1. File -> New -> Project
2. Android -> Android Application Project -> Next
3. 在Application Name欄位上填上Hello,再按Next
4. Next –> Next -> Finish
描述: C:\Users\ccprog\Desktop\h1.jpg
2.2將專案運作於模擬器 
專案模擬方式如下:
1. 在專案的root 目錄上點滑鼠右鍵
2. Run as -> Android Application
描述: C:\Users\ccprog\Desktop\H2.jpg
2.3使用既有專案匯入 
匯入專案作法如下
1.File -> Import
2.General -> Existing Projects into Workspace -> Next
3.按Browse選擇其路徑 -> 確定
值得注意的是在步驟3時,Copy projects into workspace 這個選項,其可將專案複製到workspace,讓開發者於測試修改時不會更改到原本專案。
描述: C:\Users\ccprog\Desktop\I1.jpg


Part3:Android快速學習學習程式語言的方法眾多,多數人皆可藉由別人已開發的程式碼範例快速學習,在此介紹幾個android的教學網站供參考。除了看程式碼之外,也不妨嘗試作部分的修改,觀察其變化以便加深印象。此外後面的篇幅會說明android生命週期的重要性,並提供網站供參考。
3.1 Android 教學網站介紹
  • 首先介紹的是金門大學96年的資工專題 – Android教學,在此網站中將範例作分類,特別的是其有完善的程式碼註解以及對應的教學影片。
  • 接著是Jollen的Android專欄,其專欄講解了應用程式的模式和常見的UI設計觀念等,其文章在開發觀念上有許多幫助,值得一看。
  • 再來介紹的是一個中文Android API資料的網站,若是不習慣閱讀英文文件的發開者將十分受用。
  • 最後是官方的Android training,若是習慣閱讀英文文件的開發者,可考慮直接到此學習。
3.2 Android生命週期 
開發智慧型手機程式與開發個人電腦程式在可用資源的調配上有很明顯的差異。多數情況下,後者的記憶體都足夠使用,僅少數特殊情況下可能造成作業系統不斷的SWAP,但也不會有process被任意關閉;而智慧型手機現今大多為多時分工系統,這方便在聽音樂的同時也可執行其他的應用程式,當process過多時,資源不足的情況下,部分的process是可能被自動關閉的。所以入門android,除了運用常見API之外,還必須熟悉android process的生命週期,才能在有限資源裡作有效率的利用。    
Android beginner部落格內一文描述了Activity的四種狀態以及常見的狀態轉換流程等,其內容上簡單明瞭,有助於了解android process生命週期及編寫程式時的資源運用與佈局。

結語

此篇文章介紹了如何快速入門Android開發,其中在建立環境上點出常見的錯誤及其解法,並收集了許多參考資料,相信可有效減少在學習上篩選及尋找相關資料的時間,希望對Android有興趣的開發者能有所幫助。

參考資料與相關連結 
[1] Eclipse簡介與教學, 張仁峰, 台大計中電子報0020期, 2012-03-20,http://www.cc.ntu.edu.tw/chinese/epaper/0020/20120320_2003.html
[2] 孫傳雄談科技的Android教學,http://blog.chinatimes.com/tomsun/archive/2010/09/16/539502.html
[3] 使用Eclipse開發Android程式, http://blog.yslifes.com/archives/279
[4] 狼翔天地的Android生命週期,  http://jjnnykimo.pixnet.net/blog/post/29610930-android-%E7%94%9F%E5%91%BD%E9%80%B1%E6%9C%9F
[5] 金門大學96年的資工專題 – Android教學http://gogkmit.wikidot.com/start
[6] Jollen的Android專欄http://www.jollen.org/Android/
[7] 中文Android APIhttp://www.cnblogs.com/over140/category/277077.html
[8] Android training, http://developer.android.com/training/index.html
[9] Android beginner的初學Android, http://tyroandroid.blogspot.tw/2009/07/android-activity.html

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

Eclipse 3.7繁體中文版Java IDE專業開發工具