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 上付費的。

沒有留言:

張貼留言