- 在「遠端電腦」執行 Android Studio 開發工具
- 程式編譯後,可直接下載至接在「本地電腦」的 Android 裝置
- 在「本地電腦」安裝最少量的程式
- ADB (Android Debug Bridge) 在「本地電腦」執行
- Android 裝置連接在「本地電腦」
一、在「本地電腦」的最小安裝、設定
1. 安裝、設定『命令列工具 (command line tools)』
要安裝 Android SDK 要先安裝『命令列工具 (command line tools)』,這些命令檔可以從官網下載,在 Linux 安裝用的檔案是 sdk-tools-linux-xxxxxxx.zip,這次下載的是 sdk-tools-linux-3859397.zip。安裝的目錄就定在 /opt/android-sdk/,先在 /opt/ 下建立 android-sdk 這個目錄,再將剛才下載的檔案解壓縮在 /opt/android-sdk/ 目錄下。所下的命令為:
[root@Celeron-D ~]# mkdir /opt/android-sdk安裝後,可以檢查一下結果是否如下:
[root@Celeron-D ~]# unzip sdk-tools-linux-3859397.zip -d /opt/android-sdk/
[root@Celeron-D ~]# ll /opt/android-sdk/其中 tools 這個目錄下,就是安裝好的『命令列工具 (command line tools)』。
總計 4
drwxr-xr-x. 6 root root 4096 5月 14 15:09 tools
若以「使用者」權限安裝在自己的「家目錄」,則上述命令修改為:
[SiB@Celeron-D ~]$ mkdir Android接著,就可繼續安裝 Android SDK 了。
[SiB@Celeron-D ~]$ mkdir Android/Sdk
[SiB@Celeron-D ~]$ unzip sdk-tools-linux-3859397.zip -d Android/Sdk/
2. 安裝『Android Debug Bridge (ADB)』
Android Debug Bridge (adb) 這個程式,執行後可以做為『Android 裝置』和『Android Studio』間的橋樑。這個程式是屬於 platform-tools 這個套件,透過 sdkmanager 安裝的命令為[root@Celeron-D ~]# /opt/android-sdk/tools/bin/sdkmanager platform-tools若以「使用者」權限安裝在自己的「家目錄」,則上述命令修改為:
[SiB@Celeron-D ~]$ Android/Sdk/tools/bin/sdkmanager platform-tools經上述命令安裝後,『本地電腦』的安裝工作就已經完成,接下來是設定。
3. 在各用戶的家目錄下建立 Android SDK 目錄、鏈結
如果前兩個步驟是以「使用者」權限,將sdk-tools 和 platform-tools 安裝在「使用者」的「家目錄」下,則這個步驟可以略過不做。由於前些日子已經發過類似文章,請讀者參考〝安裝 Android SDK 供『所有用戶』開發 Android APP〞的『步驟三』,在本文就不重覆了。
4. Android SDK 的更新
要更新 Android Debug Bridge (即 platform-tools 套件),其命令在 root 權限下為[root@Celeron-D ~]# /opt/android-sdk/tools/bin/sdkmanager --update若以「使用者」權限安裝在自己的「家目錄」,則上述命令修改為:
[SiB@Celeron-D ~]$ Android/Sdk/tools/bin/sdkmanager --update當「遠端電腦」的 Android SDK 有更新時,才需要下這個命令。
5. 設定 USB rules為:
這個步驟在前文〝Linux 中,令 ADB 測得以 USB 連接的 Android 設備(F19)〞中已有詳細的說明,就請讀者自行參考不再贅述。二、在「遠端電腦」開發 Android APP
開始開發 Android APP 時,其步驟在前文〝在「遠端電腦」開發,以連接「本地電腦」之 Android 裝置測試〞中有詳細說明,操作過程請讀者自行參考。在「本地電腦」開啟 ADB (Android Debug Bridge)
不過有個地方要特別注意,在確認「本地電腦」(PC_2)可以偵測到以 USB 連接的 Android 裝置後,[SiB@Celeron-D ~]$ ~/Android-SDK/platform-tools/adb devices即可在「本地電腦」(PC_2)用 SSH 建立與「遠端電腦」間的逆向連接通道,
List of devices attached
HT02SLG01505 device
[SiB@Celeron ~]$ ssh 192.168.10.17 -p 5566 -R 5037:127.0.0.1:5037若出現上例中的警示訊息,表示逆向連接通道建立失敗。「遠端電腦」的 Android Studio 將無法與「本地電腦」的 Android Debug Bridge (ADB) 溝通,也就無法用 ADB 所連結的 Android 裝置測試 Android APP 了。先在「遠端電腦」下這個命令
SiB@192.168.10.17's password:
Warning: remote port forwarding failed for listen port 5037
Last login: Fri Feb 14 16:47:21 2014 from 192.168.10.13
[SiB@Core-i7 ~]$ ~/Android/Sdk/platform-tools/adb kill-server將「遠端電腦」上佔用 5037/TCP 埠號的 ADB 關閉。再在「本地電腦」連接命令
[SiB@Celeron ~]$ ssh 192.168.10.17 -p 5566 -R 5037:127.0.0.1:5037如上例未出現任何警示訊息,機表示成功建立逆向連接通道。
SiB@192.168.10.17's password:
Last login: Fri Feb 14 16:47:21 2014 from 192.168.10.13
接下來看幾個截圖說明:
在「遠端電腦」開啟 Android Studio
在「本地電腦」端先不要插上 Android 裝置,看 Android Studio 顯示什麼訊息。在上圖中,所顯示的訊息是『No Connected Devices』,表示 Android Studio 尚未偵測到任何 Android 裝置。
註:根據之後的結果推論,Android Studio 應該會定時偵測 Android 裝置。
在「本地電腦」端,插上 Android 裝置後
當 Android 裝置插上「本地電腦」後,在「本地電腦」的 Android Debug Bridge 偵測到 Android 裝置。若再收到 Android Studio 的詢問,即回報已插入的 Android 裝置。在上圖中,「遠端電腦」的 Android Studio 所顯示的訊息表示,已偵測到一個 Android 裝置,其名稱為『FIH SH930W』,版本為『Android 4.1.1』,而使用的 API 為『API 16』。
已測試版本:
- Fedora: 25, 24, 22
參考資料:
- Stack Overflow, "Installing Android Studio in a Computer Lab Environment with Individual Student Logins on OSX Ask Question," Sep. 28, 2015 [May 14, 2017].
- Stack Overflow, "How to install android constraint layout tools outside of Android Studio by using the command line?," Aug. 31, 2016 [May 14, 2017].
沒有留言:
張貼留言
感謝你耐心看完本文,歡迎留下任何指正、建議,筆者會儘快回應。(English is also welcome.)