2011年7月15日 星期五

讓電腦的開發環境連接實體手機 - Android 新手學習筆記

若想要將開發好的程式安裝到手機,或是想對手機執行一些 Linux 指令,那就必須先讓開發環境能連接得到實體手機

不同的電腦環境,做法有部份不同
可以參考一下官網資訊
http://developer.android.com/guide/developing/device.html

若電腦 OS 是 Windows,則要裝 USB driver for adb
各家手機的 Driver 不太一樣,可參考上面官網的指引
我的是 HTC 手機,所以要裝 HTC Sync 才行
安裝方法可以參考 HTC 官網的說明
http://www.htc.com/tw/howto.aspx?id=53841&type=1&p_id=392
大致動作如下
1) 將手機用隨附的 USB傳輸線連接到電腦
連接的類型選「磁碟機」,就可以類似隨身碟一樣存取手機上的記憶卡
在 HTC 手機隨附的記憶卡中有安裝程式,例如我的在
[抽取式硬碟]:\HTC Sync\setup_3.0.5527.exe
跟官網說的是有點不一樣啦,不過應該就是這個了
將這個檔複製到電腦上
2)安全的卸載可移除式磁碟 (也就是手機),方法跟卸載隨身碟一樣
3)執行剛剛複製過來的安裝檔,照著安裝程式的指引安裝即可

若電腦是 Ubuntu
則官網說要在 /etc/udev/rules.d 下新增一個 51-android.rules 檔案

若 Ubuntu 版本是 Gusty/Hardy ,則內容為

SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"

若 Ubuntu 版本是 Dapper,則內容為
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="0bb4", MODE="0666"

然後執行
chmod a+r /etc/udev/rules.d/51-android.rules

這些動作說實在的我並不了解是做什麼用的 ^_^"
我有跟著做了一次,但後來又將 51-android.rules 檔案砍掉
砍掉之後仍然能夠成功的連線
所以我也不確定這些動作是否必要


接著,將手機用隨附的 USB傳輸線連接到電腦
連接的類型任意,用僅充電即可

然後在手機上點選
選單 > 設定 > 應用程式 > 開發
勾選「 USB 除錯中」

開啟 command line
即 Window 中的命令提示字元(cmd)
或 Ubuntu 中的 Terminal
切換到 android sdk 安裝路徑下的 platform-tools
執行 ./adb devices
若有看到手機資訊,就表示連接成功了
例如我的環境

List of devices attached
HTxxxxxxxxxx device

(上面的 xxxxxxxxxx 是一串英數字編號)

若看到 ???????????? no permissions
這一般是在 Ubuntu 下的問題
那可能是因為有用 Eclipse 執行過某些動作,啟動了 android server
可是啟動的權限又不夠,才會出現這種問題
此時要先關掉 Eclipse,然後執行
./adb kill-server
sudo ./adb start-server
再執行一次
 ./adb devices
應該就能正常看到手機資訊了

--
註:小米手機請參考這篇「使用小米2S開發APP
--

此時就可以對手機執行一些動作了
例如若要對手機下 Linux 命令 (Android 是 Linux base)
只要執行下面的動作就可以進入 Linux 的 Command Line 模式了
./adb -s <serialnumber> shell
這裡的 <serialnumber> 改成剛剛在 ./adb devices 中看到的裝置號碼即可
例如
adb -s HTxxxxxxxxxx shell

若要跳出,則一樣執行 exit 即可

沒有留言:

張貼留言

廣告訊息會被我刪除