歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在Linux下安裝Android開發環境並以USB調試方式鏈接手機進行開發

在Linux下安裝Android開發環境並以USB調試方式鏈接手機進行開發

日期:2017/2/28 16:34:52   编辑:Linux教程
我的機器是HTC Tattoo
固件版本是Android1.6
開發宿主系統MagicLinux2.5

因此下載android1.6 SDK
http://dl.google.com/android/android-sdk-windows-1.6_r1.zip
或者
http://kugou.me/android-sdk-linux_x86-1.6_r1.tgz

解壓SDK到
~/android/android-sdk-linux_x86-1.6_r1

去eclipse官方網站下載jee-eclipse for linux

安裝ADT
打開jee-eclipse
Help--> Install New SoftWare..
Add...
添加Location:http://dl-ssl.google.com/android/eclipse
點擊下一步 接受 下載 安裝。

指定SDK目錄
重啟eclipse後點擊
Window--> Preferences--> android -->SDK Location:
指定路徑為~/android/android-sdk-linux_x86-1.6_r1
OK。現在可以新建虛擬機創建android工程進行開發調試了。
這些在網上有大量教程,請自己google。


下面是用USB調試方式連接手機的方法
這裡比較麻煩的是Linux不會自動配置好android手機驅動的權限和設備鏈接文件文件
因此我們需要手動配置,這裡涉及到udev的配置和設備的查看技巧:

使用命令監視系統信息
sudo tail -f /var/log/messages

此時在usb接口上連接手機
messages會出現
un 13 18:12:08 MagicLinux kernel: usb 2-1: new high speed USB device using ehci_hcd and address 57
Jun 13 18:12:09 MagicLinux kernel: usb 2-1: New USB device found, idVendor=0bb4, idProduct=0c02
Jun 13 18:12:09 MagicLinux kernel: usb 2-1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
Jun 13 18:12:09 MagicLinux kernel: usb 2-1: Product: Android Phone
Jun 13 18:12:09 MagicLinux kernel: usb 2-1: Manufacturer: HTC
Jun 13 18:12:09 MagicLinux kernel: usb 2-1: SerialNumber: HT9A4LG04864
Jun 13 18:12:09 MagicLinux kernel: usb 2-1: configuration #1 chosen from 1 choice
Jun 13 18:12:09 MagicLinux kernel: scsi50 : SCSI emulation for USB Mass Storage devices
Jun 13 18:12:14 MagicLinux kernel: scsi 50:0:0:0: Direct-Access HTC Android Phone 0100 PQ: 0 ANSI: 2
Jun 13 18:12:14 MagicLinux kernel: sd 50:0:0:0: Attached scsi generic sg2 type 0
Jun 13 18:12:14 MagicLinux kernel: sd 50:0:0:0: [sdb] Attached SCSI removable disk
Jun 13 18:17:54 MagicLinux kernel: usb 2-1: USB disconnect, address 57
Jun 13 18:17:57 MagicLinux kernel: usb 2-1: new high speed USB device using ehci_hcd and address 58
Jun 13 18:17:57 MagicLinux kernel: usb 2-1: New USB device found, idVendor=0bb4, idProduct=0c02
Jun 13 18:17:57 MagicLinux kernel: usb 2-1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
Jun 13 18:17:57 MagicLinux kernel: usb 2-1: Product: Android Phone
Jun 13 18:17:57 MagicLinux kernel: usb 2-1: Manufacturer: HTC
Jun 13 18:17:57 MagicLinux kernel: usb 2-1: SerialNumber: HT9A4LG04864
Jun 13 18:17:57 MagicLinux kernel: usb 2-1: configuration #1 chosen from 1 choice
Jun 13 18:17:57 MagicLinux kernel: scsi51 : SCSI emulation for USB Mass Storage devices
Jun 13 18:18:02 MagicLinux kernel: scsi 51:0:0:0: Direct-Access HTC Android Phone 0100 PQ: 0 ANSI: 2
Jun 13 18:18:02 MagicLinux kernel: sd 51:0:0:0: Attached scsi generic sg2 type 0
Jun 13 18:18:02 MagicLinux kernel: sd 51:0:0:0: [sdb] Attached SCSI removable disk



然後在/etc/udev/rules.d下創建文件
[sunshine@MagicLinux rules.d]$ cat 50-android.rules
SUBSYSTEMS=="usb",ATTRS{idVendor}=="0bb4",SYMLINK+="android_adb",OWNER="sunshine"
ATTRS{idVendor} 為上面獲得的 idVendor
OWNER
為你當前的用戶,也是你運行adb服務的用戶(此處要注意,我們指定這裡的用戶就是為了與adb服務的所有者權限相一致)。

運行命令使剛更改的配置生效(此處針對於Fedora及其衍生版本)
sudo udevadm control --reload-rules

再次插入USB
在/dev/下出現一個連接文件 android_adb指向的設備就是你的USB調試的手機設備。

此時在~/android/android-sdk-linux_x86-1.6_r1/tools下運行
$./adb kill-server
$./adb start-server
$./adb devices
List of devices attached
HT9A4LG04864 device

安裝一個apk試試吧
./adb install *.apk

在eclipse中也可以發現連接的手機設備,進行開發調試。

注:在獲得idVendor時也可以使用
udevinfo -a -p /sys/class/usb_device/...
udevinfo -e
udev配置的時候可以使用任何一個參數(idVendor)來指定設備。
等命令,方法多樣,請參考udev的相關命令文章。
Copyright © Linux教程網 All Rights Reserved