當前位置:首頁 » 安卓系統 » androidsdklinux安裝

androidsdklinux安裝

發布時間: 2022-11-05 20:32:05

⑴ 怎樣在Ubuntu下安裝Android SDK/ADB

Ubuntu電腦安裝Android SDK/ADB

第一步,你要下載linux版Android SDK的安裝或文件包,然後你需要從Android SDK Manager內下載Platform Tools
Package

請從Google官方獲取Android
SDK安裝或文件包,通常情況,你下載的文件名為android-sdk_rxx-linux.tgz的形式,rxx代表版本,比如,r16版,即android-sdk_r16-linux.tgz,r24版,即android-sdk_r24-linux.tgz

請放置Android SDK安裝或文件包在你的用戶主目錄

在你的Ubuntu電腦上打開終端窗口

解壓Android SDK文件:
cd ~
tar -zxvf android-sdk_r16-linux.tgz

在~/android-sdk-linux/tools字目錄,有一個叫做android的可執行文件,盡管名字是android,但它實際上是Android
SDK Manager

運行Android SDK Manager:
./~/android-sdk-linux/tools/android

選擇Android SDK
Tools與Android SDK Platform-tools項,點Install
packages安裝Platform Tools
Package工具包。包括ADB與Fastboot可執行的文件在內的工具包都會被下載,由於下載的文件較多而需要一定的時間,你能去喝點東西

你下載的Platform Tools
Package工具包文件將位於新創建的~/android-sdk-linux/platform-tools目錄

第二步,修改ADB與Fastboot可執行文件的默認PATH路徑環境。PATH環境變數可以是在~/.profile(或~/.bash_profile)或者~/.bashrc文件內修改,~/.profile文件是讀取所有互動式Shell的登錄,~/.bashrc文件讀取所有非互動式Shell的登錄(如sftp),在大多數默認情況下,~/.profile文件導入所有~/.bashrc文件的設置。PATH命令設定的改變必須包括/android-sdk-linux/tools與/android-sdk-linux/platform-tools目錄

kevdog的PATH命令設定通過Ubuntu系統內初始的默認編輯器Gedit在~/.bashrc文件底部增加了一行:
export
PATH=${PATH}:${HOME}/android-sdk-linux/tools:${HOME}/android-sdk-linux/platform-tools

第三步,我們需要為Ubuntu創建udev設備管理規則,從而讓設備在通過USB埠連接到電腦時能被正確地識別

將設備連接到電腦,然後執行命令:
lsusb

你會看到類似於下面的輸出信息:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation
2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004
Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001:
ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 063: ID 04e8:6860
Samsung Electronics Co., Ltd

由於kevdog的設備是Samsung的某款設備,因此你能看到相應的識別信息:
Bus 001 Device 063: ID
04e8:6860 Samsung Electronics Co., Ltd

我們來解釋下上面的識別信息:

Bus 001 Device
063,設備端的名稱是/dev/bus/usb/001/063,即這個信息可以幫助我們確定設備端的名稱

04e8,vendorID,即供貨商編號

6860,proctID,即產品編號

使用設備端的名稱/dev/bus/usb/001/063可以讓我們查詢設備的屬性,查詢這些屬性有時很有必要,因為udev設備管理匹配設備是基於特定標準的。為此,我們需要一個正確的udev設備匹配規則集,這個過程的第一步就是查詢能被連接或插入到我們規則集的准則,這可以通過udevadm程序來實現,並且有兩種方式現,它們生成的輸出信息為我們的設備構建udev設備管理規則:

udevadm查詢udev設備管理規則方法1:
udevadm info -q all -n <name of device
node>
根據原作者的實際情況,設備端名稱是/dev/bus/usb/001/063,因此命令是:

udevadm info -q all -n /dev/bus/usb/001/063
你會看到類似於下面的輸出信息:

$ udevadm info -q all -n /dev/bus/usb/001/063
P:
/devices/pci0000:00/0000:00:1d.7/usb1/1-8
N: bus/usb/001/063
S:
libmtp-1-8
S: GalaxyNexus
E: UDEV_LOG=3
E:
DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-8
E: MAJOR=189
E:
MINOR=62
E: DEVNAME=/dev/bus/usb/001/063
E: DEVTYPE=usb_device
E:
DRIVER=usb
E: PRODUCT=4e8/6860/216
E: TYPE=0/0/0
E: BUSNUM=001

E: DEVNUM=063
E: SUBSYSTEM=usb
E: ID_MTP_DEVICE=1
E:
ID_MEDIA_PLAYER=samsung_galaxy-s2
E: ID_VENDOR=samsung
E:
ID_VENDOR_ENC=samsung
E: ID_VENDOR_ID=04e8
E: ID_MODEL=Galaxy
E:
ID_MODEL_ENC=Galaxy
E: ID_MODEL_ID=6860
E: ID_REVISION=0216
E:
ID_SERIAL=samsung_Galaxy_0146B06501005018
E:
ID_SERIAL_SHORT=0146B06501005018
E: ID_BUS=usb
E:
ID_USB_INTERFACES=:ffff00:ff4201:
E: DEVLINKS=/dev/libmtp-1-8
/dev/GalaxyNexus
E: TAGS=:udev-acl:
我們使用的規則從有E:(E=ENV=Device
Property設備屬性值)的行開始

udevadm查詢udev設備管理規則方法2:
udevadm info -a -p $(udevadm info -q path
-n <name of device node>)

根據原作者的實際情況,設備端名稱是/dev/bus/usb/001/063,因此命令是:
udevadm info -a -p
$(udevadm info -q path -n /dev/bus/usb/001/063)
你會看到類似於下面的輸出信息:

$ udevadm info -a -p $(udevadm info -q path -n /dev/bus/usb/001/063)

Udevadm info starts with the device specified by the devpath and then

walks up the chain of parent devices. It prints for every device
found,
all possible attributes in the udev rules key format.
A rule to match, can
be composed by the attributes of the device
and the attributes from one
single parent device.
looking at device
'/devices/pci0000:00/0000:00:1d.7/usb1/1-8':
KERNEL=="1-8"

SUBSYSTEM=="usb"
DRIVER=="usb"
ATTR{configuration}==""

ATTR{bNumInterfaces}==" 2"
ATTR{bConfigurationValue}=="1"

ATTR{bmAttributes}=="80"
ATTR{bMaxPower}=="500mA"
ATTR{urbnum}=="29"

ATTR{idVendor}=="04e8"
ATTR{idProct}=="6860"

ATTR{bcdDevice}=="0216"
ATTR{bDeviceClass}=="00"

ATTR{bDeviceSubClass}=="00"
ATTR{bDeviceProtocol}=="00"

ATTR{bNumConfigurations}=="1"
ATTR{bMaxPacketSize0}=="64"

ATTR{speed}=="480"
ATTR{busnum}=="1"
ATTR{devnum}=="63"

ATTR{devpath}=="8"
ATTR{version}==" 2.00"
ATTR{maxchild}=="0"

ATTR{quirks}=="0x0"
ATTR{avoid_reset_quirk}=="0"

ATTR{authorized}=="1"
ATTR{manufacturer}=="samsung"

ATTR{proct}=="Galaxy"
ATTR{serial}=="0146B06501005018"

looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1':

KERNELS=="usb1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"

ATTRS{configuration}==""
ATTRS{bNumInterfaces}==" 1"

ATTRS{bConfigurationValue}=="1"
ATTRS{bmAttributes}=="e0"

ATTRS{bMaxPower}==" 0mA"
ATTRS{urbnum}=="1403"

ATTRS{idVendor}=="1d6b"
ATTRS{idProct}=="0002"

ATTRS{bcdDevice}=="0300"
ATTRS{bDeviceClass}=="09"

ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="00"

ATTRS{bNumConfigurations}=="1"
ATTRS{bMaxPacketSize0}=="64"

ATTRS{speed}=="480"
ATTRS{busnum}=="1"
ATTRS{devnum}=="1"

ATTRS{devpath}=="0"
ATTRS{version}==" 2.00"
ATTRS{maxchild}=="8"

ATTRS{quirks}=="0x0"
ATTRS{avoid_reset_quirk}=="0"

ATTRS{authorized}=="1"
ATTRS{manufacturer}=="Linux 3.0.0-14-generic
ehci_hcd"
ATTRS{proct}=="EHCI Host Controller"

ATTRS{serial}=="0000:00:1d.7"
ATTRS{authorized_default}=="1"

looking at parent device '/devices/pci0000:00/0000:00:1d.7':

KERNELS=="0000:00:1d.7"
SUBSYSTEMS=="pci"
DRIVERS=="ehci_hcd"

ATTRS{vendor}=="0x8086"
ATTRS{device}=="0x27cc"

ATTRS{subsystem_vendor}=="0x103c"
ATTRS{subsystem_device}=="0x3010"

ATTRS{class}=="0x0c0320"
ATTRS{irq}=="20"
ATTRS{local_cpus}=="ff"

ATTRS{local_cpulist}=="0-7"
ATTRS{dma_mask_bits}=="32"

ATTRS{consistent_dma_mask_bits}=="32"
ATTRS{broken_parity_status}=="0"

ATTRS{msi_bus}==""
ATTRS{companion}==""
looking at
parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"

SUBSYSTEMS==""
DRIVERS==""
我們使用的規則從有ATTRS(ATTRS=Device
Attributes設備屬性)的行開始

不管是ENV,還是ATTRS,我們可以構建一個udev設備管理規則集。規則集的名稱可以隨意,根據原作者的意圖,我們叫做51-android.rules:

你能這樣建立規則集文件:
gksu gedit /etc/udev/rules.d/51-android.rules

之後,請在規則集文件中加入相關的規則,以原作者的規則來看,注意是一行一個:
SUBSYSTEM=="usb",
ENV{ID_VENDOR_ID}=="04e8", ENV{ID_MODEL}=="Galaxy", MODE="0666",
SYMLINK+="GalaxyNexus"
SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="04e8",
ENV{ID_MODEL_ID}=="6860", MODE="0666", SYMLINK+="GalaxyNexus"

SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProct}=="6860",
ATTR{proct}=="Galaxy" MODE="0666", SYMLINK+="GalaxyNexus"

如上面所加的規則,這些規則匹配准則是SUBSYSTEM,
ENV,ATTR,它只會修改設備的模式MODE(0666=rw-rw-rw-)與創建鏈接於/dev/GalaxyNexus的GalaxyNexus標識。當然,更多的指令可以分配給設備,如插入或移除設備時的執行命令,你能這樣指定指令:

ACTION=="add", RUN+="<name of action>"
ACTION==」remove」,
RUN+="<name of action>"
例如,我們要設定設備在插入或彈出時播放一個聲音或MP3文件,可以如下指令設定:

ACTION=="add", RUN+="/usr/local/bin/NexusMount.sh"

ACTION==」remove」, RUN+="/usr/local/bin/NexusUnmount.sh"

需要注意的是,每個ACTION指令設定必須在它自己的命令行;目錄必須正確;指令可以是多重設定

一旦規則構建完成,我們需要保存/etc/udev/rules.d/51-android.rules規則文件

在你執行規則集前,測試一下通常是一個好主意,因為那樣你能很容易地找出編寫規則集的錯誤:

你能使用udevadm工具簡單地完成規則集的測試:
udevadm info -q path -n d=<device
name>
根據原作者的設備端名/dev/bus/usb/001/063,測試行為:

udevadm test --action="SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="04e8",
ENV{ID_MODEL}=="Galaxy" MODE="0666", SYMLINK+="GalaxyNexus"" $(udevadm info -q
path -n /dev/bus/usb/001/063)
雖然測試輸出行相當長,兩行輸出信息正確地識別規則集的指令設定:

udev_rules_apply_to_event: MODE 0666
/etc/udev/rules.d/51-android.rules:1
udev_rules_apply_to_event: LINK
'GalaxyNexus' /etc/udev/rules.d/51-android.rules:1

一旦你確認了規則集正確,請重啟udev設備管理服務:
sudo service udev restart

第四步,退出電腦的登錄,然後重新登錄回

在設備插入的情況下,執行ADB命令,如確認設備連接:
$ adb devices

你會看到設備識別號信息,根據原作者的設備,它是
0146B06501005018 device

如果你的設備已啟動在Fastboot模式,許多設備不啟動可能也行,你能執行Fastboot命令,如標準的Fastboot設備:
$
fastboot devices

⑵ 如何安裝Android SDK和設置ADB

Ubuntu電腦安裝Android SDK/ADB

第一步,你要下載Linux版Android SDK的安裝或文件包,然後你需要從Android SDK Manager內下載Platform Tools
Package

請從Google官方獲取Android
SDK安裝或文件包,通常情況,你下載的文件名為android-sdk_rxx-linux.tgz的形式,rxx代表版本,比如,r16版,即android-sdk_r16-linux.tgz,r24版,即android-sdk_r24-linux.tgz

請放置Android SDK安裝或文件包在你的用戶主目錄

在你的Ubuntu電腦上打開終端窗口

解壓Android SDK文件:
cd ~
tar -zxvf android-sdk_r16-linux.tgz

在~/android-sdk-linux/tools字目錄,有一個叫做android的可執行文件,盡管名字是android,但它實際上是Android
SDK Manager

運行Android SDK Manager:
./~/android-sdk-linux/tools/android

選擇Android SDK
Tools與Android SDK Platform-tools項,點Install
packages安裝Platform Tools
Package工具包。包括ADB與Fastboot可執行的文件在內的工具包都會被下載,由於下載的文件較多而需要一定的時間,你能去喝點東西

你下載的Platform Tools
Package工具包文件將位於新創建的~/android-sdk-linux/platform-tools目錄


第二步,修改ADB與Fastboot可執行文件的默認PATH路徑環境。PATH環境變數可以是在~/.profile(或~
/.bash_profile)或者~/.bashrc文件內修改,~/.profile文件是讀取所有互動式Shell的登錄,~/.bashrc文件
讀取所有非互動式Shell的登錄(如sftp),在大多數默認情況下,~/.profile文件導入所有~/.bashrc文件的設置。PATH命令設
定的改變必須包括/android-sdk-linux/tools與/android-sdk-linux/platform-tools目錄

kevdog的PATH命令設定通過Ubuntu系統內初始的默認編輯器Gedit在~/.bashrc文件底部增加了一行:
export
PATH=${PATH}:${HOME}/android-sdk-linux/tools:${HOME}/android-sdk-linux/platform-tools

第三步,我們需要為Ubuntu創建udev設備管理規則,從而讓設備在通過USB埠連接到電腦時能被正確地識別

將設備連接到電腦,然後執行命令:
lsusb

你會看到類似於下面的輸出信息:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation
2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004
Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001:
ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 063: ID 04e8:6860
Samsung Electronics Co., Ltd

由於kevdog的設備是Samsung的某款設備,因此你能看到相應的識別信息:
Bus 001 Device 063: ID
04e8:6860 Samsung Electronics Co., Ltd

我們來解釋下上面的識別信息:

Bus 001 Device
063,設備端的名稱是/dev/bus/usb/001/063,即這個信息可以幫助我們確定設備端的名稱

04e8,vendorID,即供貨商編號

6860,proctID,即產品編號


使用設備端的名稱/dev/bus/usb/001/063可以讓我們查詢設備的屬性,查詢這些屬性有時很有必要,因為udev設備管理匹配設備是基於
特定標準的。為此,我們需要一個正確的udev設備匹配規則集,這個過程的第一步就是查詢能被連接或插入到我們規則集的准則,這可以通過udevadm程
序來實現,並且有兩種方式現,它們生成的輸出信息為我們的設備構建udev設備管理規則:

udevadm查詢udev設備管理規則方法1:
udevadm info -q all -n <name of device
node>
根據原作者的實際情況,設備端名稱是/dev/bus/usb/001/063,因此命令是:

udevadm info -q all -n /dev/bus/usb/001/063
你會看到類似於下面的輸出信息:

$ udevadm info -q all -n /dev/bus/usb/001/063
P:
/devices/pci0000:00/0000:00:1d.7/usb1/1-8
N: bus/usb/001/063
S:
libmtp-1-8
S: GalaxyNexus
E: UDEV_LOG=3
E:
DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-8
E: MAJOR=189
E:
MINOR=62
E: DEVNAME=/dev/bus/usb/001/063
E: DEVTYPE=usb_device
E:
DRIVER=usb
E: PRODUCT=4e8/6860/216
E: TYPE=0/0/0
E: BUSNUM=001

E: DEVNUM=063
E: SUBSYSTEM=usb
E: ID_MTP_DEVICE=1
E:
ID_MEDIA_PLAYER=samsung_galaxy-s2
E: ID_VENDOR=samsung
E:
ID_VENDOR_ENC=samsung
E: ID_VENDOR_ID=04e8
E: ID_MODEL=Galaxy
E:
ID_MODEL_ENC=Galaxy
E: ID_MODEL_ID=6860
E: ID_REVISION=0216
E:
ID_SERIAL=samsung_Galaxy_0146B06501005018
E:
ID_SERIAL_SHORT=0146B06501005018
E: ID_BUS=usb
E:
ID_USB_INTERFACES=:ffff00:ff4201:
E: DEVLINKS=/dev/libmtp-1-8
/dev/GalaxyNexus
E: TAGS=:udev-acl:
我們使用的規則從有E:(E=ENV=Device
Property設備屬性值)的行開始

udevadm查詢udev設備管理規則方法2:
udevadm info -a -p $(udevadm info -q path
-n <name of device node>)

根據原作者的實際情況,設備端名稱是/dev/bus/usb/001/063,因此命令是:
udevadm info -a -p
$(udevadm info -q path -n /dev/bus/usb/001/063)
你會看到類似於下面的輸出信息:

$ udevadm info -a -p $(udevadm info -q path -n /dev/bus/usb/001/063)

Udevadm info starts with the device specified by the devpath and then

walks up the chain of parent devices. It prints for every device
found,
all possible attributes in the udev rules key format.
A rule to match, can
be composed by the attributes of the device
and the attributes from one
single parent device.
looking at device
'/devices/pci0000:00/0000:00:1d.7/usb1/1-8':
KERNEL=="1-8"

SUBSYSTEM=="usb"
DRIVER=="usb"
ATTR{configuration}==""

ATTR{bNumInterfaces}==" 2"
ATTR{bConfigurationValue}=="1"

ATTR{bmAttributes}=="80"
ATTR{bMaxPower}=="500mA"
ATTR{urbnum}=="29"

ATTR{idVendor}=="04e8"
ATTR{idProct}=="6860"

ATTR{bcdDevice}=="0216"
ATTR{bDeviceClass}=="00"

ATTR{bDeviceSubClass}=="00"
ATTR{bDeviceProtocol}=="00"

ATTR{bNumConfigurations}=="1"
ATTR{bMaxPacketSize0}=="64"

ATTR{speed}=="480"
ATTR{busnum}=="1"
ATTR{devnum}=="63"

ATTR{devpath}=="8"
ATTR{version}==" 2.00"
ATTR{maxchild}=="0"

ATTR{quirks}=="0x0"
ATTR{avoid_reset_quirk}=="0"

ATTR{authorized}=="1"
ATTR{manufacturer}=="samsung"

ATTR{proct}=="Galaxy"
ATTR{serial}=="0146B06501005018"

looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1':

KERNELS=="usb1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"

ATTRS{configuration}==""
ATTRS{bNumInterfaces}==" 1"

ATTRS{bConfigurationValue}=="1"
ATTRS{bmAttributes}=="e0"

ATTRS{bMaxPower}==" 0mA"
ATTRS{urbnum}=="1403"

ATTRS{idVendor}=="1d6b"
ATTRS{idProct}=="0002"

ATTRS{bcdDevice}=="0300"
ATTRS{bDeviceClass}=="09"

ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="00"

ATTRS{bNumConfigurations}=="1"
ATTRS{bMaxPacketSize0}=="64"

ATTRS{speed}=="480"
ATTRS{busnum}=="1"
ATTRS{devnum}=="1"

ATTRS{devpath}=="0"
ATTRS{version}==" 2.00"
ATTRS{maxchild}=="8"

ATTRS{quirks}=="0x0"
ATTRS{avoid_reset_quirk}=="0"

ATTRS{authorized}=="1"
ATTRS{manufacturer}=="Linux 3.0.0-14-generic
ehci_hcd"
ATTRS{proct}=="EHCI Host Controller"

ATTRS{serial}=="0000:00:1d.7"
ATTRS{authorized_default}=="1"

looking at parent device '/devices/pci0000:00/0000:00:1d.7':

KERNELS=="0000:00:1d.7"
SUBSYSTEMS=="pci"
DRIVERS=="ehci_hcd"

ATTRS{vendor}=="0x8086"
ATTRS{device}=="0x27cc"

ATTRS{subsystem_vendor}=="0x103c"
ATTRS{subsystem_device}=="0x3010"

ATTRS{class}=="0x0c0320"
ATTRS{irq}=="20"
ATTRS{local_cpus}=="ff"

ATTRS{local_cpulist}=="0-7"
ATTRS{dma_mask_bits}=="32"

ATTRS{consistent_dma_mask_bits}=="32"
ATTRS{broken_parity_status}=="0"

ATTRS{msi_bus}==""
ATTRS{companion}==""
looking at
parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"

SUBSYSTEMS==""
DRIVERS==""
我們使用的規則從有ATTRS(ATTRS=Device
Attributes設備屬性)的行開始

不管是ENV,還是ATTRS,我們可以構建一個udev設備管理規則集。規則集的名稱可以隨意,根據原作者的意圖,我們叫做51-android.rules:

你能這樣建立規則集文件:
gksu gedit /etc/udev/rules.d/51-android.rules

之後,請在規則集文件中加入相關的規則,以原作者的規則來看,注意是一行一個:
SUBSYSTEM=="usb",
ENV{ID_VENDOR_ID}=="04e8", ENV{ID_MODEL}=="Galaxy", MODE="0666",
SYMLINK+="GalaxyNexus"
SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="04e8",
ENV{ID_MODEL_ID}=="6860", MODE="0666", SYMLINK+="GalaxyNexus"

SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProct}=="6860",
ATTR{proct}=="Galaxy" MODE="0666", SYMLINK+="GalaxyNexus"

如上面所加的規則,這些規則匹配准則是SUBSYSTEM,
ENV,ATTR,它只會修改設備的模式MODE(0666=rw-rw-rw-)與創建鏈接於/dev/GalaxyNexus的GalaxyNexus標識。當然,更多的指令可以分配給設備,如插入或移除設備時的執行命令,你能這樣指定指令:

ACTION=="add", RUN+="<name of action>"
ACTION==」remove」,
RUN+="<name of action>"
例如,我們要設定設備在插入或彈出時播放一個聲音或MP3文件,可以如下指令設定:

ACTION=="add", RUN+="/usr/local/bin/NexusMount.sh"

ACTION==」remove」, RUN+="/usr/local/bin/NexusUnmount.sh"

需要注意的是,每個ACTION指令設定必須在它自己的命令行;目錄必須正確;指令可以是多重設定

一旦規則構建完成,我們需要保存/etc/udev/rules.d/51-android.rules規則文件

在你執行規則集前,測試一下通常是一個好主意,因為那樣你能很容易地找出編寫規則集的錯誤:

你能使用udevadm工具簡單地完成規則集的測試:
udevadm info -q path -n d=<device
name>
根據原作者的設備端名/dev/bus/usb/001/063,測試行為:

udevadm test --action="SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="04e8",
ENV{ID_MODEL}=="Galaxy" MODE="0666", SYMLINK+="GalaxyNexus"" $(udevadm info -q
path -n /dev/bus/usb/001/063)
雖然測試輸出行相當長,兩行輸出信息正確地識別規則集的指令設定:

udev_rules_apply_to_event: MODE 0666
/etc/udev/rules.d/51-android.rules:1
udev_rules_apply_to_event: LINK
'GalaxyNexus' /etc/udev/rules.d/51-android.rules:1

一旦你確認了規則集正確,請重啟udev設備管理服務:
sudo service udev restart

第四步,退出電腦的登錄,然後重新登錄回

在設備插入的情況下,執行ADB命令,如確認設備連接:
$ adb devices

你會看到設備識別號信息,根據原作者的設備,它是
0146B06501005018 device

如果你的設備已啟動在Fastboot模式,許多設備不啟動可能也行,你能執行Fastboot命令,如標準的Fastboot設備:
$
fastboot devices

⑶ linux系統如何安裝apk文件

1、在linux中安裝virtualbox,然後安裝安卓系統,再安裝apk
2、嘗試安裝shashlink,這個是安卓的一個模擬庫,一般來說,支持x86的安卓的apk才可以運行,只支持arm的不能運行。

⑷ linux下怎麼安裝android sdk23.0.2

首先, 你得有個VPN
參考以下三篇完成Android SDK的安裝
https://www.digitalocean.com/community/tutorials/how-to-build-android-apps-with-jenkins
http://stackoverflow.com/questions/4681697/is-there-a-way-to-automate-the-android-sdk-installation
http://developer.android.com/sdk/installing/adding-packages.html
首先到 https://developer.android.com/sdk/index.html 下載SDK Tools Only, 我下的是 android-sdk_r24.1.2-linux.tgz
在linux里解壓縮, 用於下載組件的是tools/android. 參數說明

Action "update sdk":
Updates the SDK by suggesting new platforms to install if available.
Options:
-f --force Forces replacement of a package or its parts, even if something has been modified
-u --no-ui Updates from command-line (does not display the GUI)
-o --obsolete Installs obsolete packages
-t --filter A filter that limits the update to the specified types of packages in the form of
a comma-separated list of [platform, tool, platform-tool, doc, sample, extra]
-s --no-https Uses HTTP instead of HTTPS (the default) for downloads
-n --dry-mode Simulates the update but does not download or install anything

查看可用的組件
android list sdk --all

會得到一個類似以下的列表, 把要下載的序號記下來

1- Android SDK Tools, revision 24.1.2
2- Android SDK Platform-tools, revision 22
3- Android SDK Build-tools, revision 22.0.1
4- Android SDK Build-tools, revision 22 (Obsolete)
5- Android SDK Build-tools, revision 21.1.2
6- Android SDK Build-tools, revision 21.1.1 (Obsolete)
7- Android SDK Build-tools, revision 21.1 (Obsolete)
8- Android SDK Build-tools, revision 21.0.2 (Obsolete)
9- Android SDK Build-tools, revision 21.0.1 (Obsolete)
10- Android SDK Build-tools, revision 21 (Obsolete)
11- Android SDK Build-tools, revision 20
12- Android SDK Build-tools, revision 19.1
13- Android SDK Build-tools, revision 19.0.3 (Obsolete)
14- Android SDK Build-tools, revision 19.0.2 (Obsolete)
15- Android SDK Build-tools, revision 19.0.1 (Obsolete)
16- Android SDK Build-tools, revision 19 (Obsolete)
17- Android SDK Build-tools, revision 18.1.1 (Obsolete)
18- Android SDK Build-tools, revision 18.1 (Obsolete)
19- Android SDK Build-tools, revision 18.0.1 (Obsolete)
20- Android SDK Build-tools, revision 17 (Obsolete)
21- Documentation for Android SDK, API 22, revision 1
22- SDK Platform Android 5.1.1, API 22, revision 2
23- SDK Platform Android 5.0.1, API 21, revision 2
24- SDK Platform Android 4.4W.2, API 20, revision 2
25- SDK Platform Android 4.4.2, API 19, revision 4
26- SDK Platform Android 4.3.1, API 18, revision 3
27- SDK Platform Android 4.2.2, API 17, revision 3

下載需要的組件, 注意--all 這個參數一定要加上, 否則後面filter里的序號不起作用, 例如我用的是
android update sdk -u --all --filter 1,2,3,5,11,12,22,23,24,25,26,27,28,29,88,89

然後等待其安裝完成就可以了

⑸ linux下android sdk怎麼安裝

一、下載android sdk
下載SD,選擇Linux(i386)。因為SDK只有32位的,如果裝的是64位系統,則要安裝ia32-libs,運行32位程序。
ubuntu安裝命令:sudo apt-get install ia32-libs(在Ubuntu中的命令)。
centos安裝命令:
yum install glibc.i686

下載完成後解壓,在終端進入到SDK的根目錄,然後執行:tools/android update sdk –no-ui即可開始和windows裡面一樣的更新。

二、配置環境變數
更新完成後配置環境變數。使用命令 vi /etc/profile 編輯文件profile,然後在下面增加下面內容:
export ANDROID_HOME=/opt/softwaretools/android-sdk-linux
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH
/opt/softwaretools/android-sdk-linux為SDK的根目錄。
這個配置之後,以後要執行android裡面的命令,就不是需要進到這個目錄,直接可以在終端裡面輸入。
修改完成後,使用命令 :wq! 保存關閉文件,再執行命令 source /etc/profile 使配置生效一下。
在終端輸入:android,如果Android SDK Manager窗口出來了,就證明環境配置成功。

三、配置AVD
1、進入$SDK_HOME/toos目錄
2、命令窗口運行:./android avd

⑹ linux怎麼用android sdk安裝android模擬器

SDK不需要安裝的,開發工具中自帶SDK,你只更新SDK即可創建模擬器了

但是國內已經無法正常的更新和下載SDK了

需要作幾個設置:

  1. 使用國內鏡像 鏡像地址在附件中埠80

  2. 使用工具進行連接

  3. 設置Eclipse的更新地址 將地址設置為 本機 8580

  4. 重新打開SDK Manager 將需要更新或者下載的選項勾上並按 Install Packages即可。


⑺ 如何在linux下配置AndroidStudio開發環境

1、系統環境

[android@localhost ~]$uname -a

Linux localhost.localdomain 2.6.32-71.el6.i686 #1SMP Wed Sep 1 01:26:34 EDT 2010 i686 i686 i386 GNU/Linux

[android@localhost ~]$lsb_release -a

LSB Version: :core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch

Distributor ID: RedHatEnterpriseServer

Description: Red Hat Enterprise Linux Server release 6.0 (Santiago)

Release: 6.0

Codename: Santiago

[android@localhost ~]$

2、准備軟體

java

eclipse

android-sdk

ADT

這些軟體都可以在官網上下載。

3、搭建過程

(1) 安裝java

[android@localhost ~]$ rpm -qa | grep java

eclipse-mylyn-java-3.3.2-4.5.el6.i686

java-1.6.0-openjdk-devel-1.6.0.0-1.21.b17.el6.i686

java-1.6.0-openjdk-1.6.0.0-1.21.b17.el6.i686

tzdata-java-2010l-1.el6.noarch

gcc-java-4.4.4-13.el6.i686

java-1.5.0-gcj-1.5.0.0-29.1.el6.i686

subversion-javahl-1.6.11-2.el6.i686

ooobasis3.3-javafilter-3.3.0-9567.i586

libvirt-java-0.4.5-2.el6.noarch

lpg-java-compat-1.1.0-4.1.el6.noarch

libvirt-java-devel-0.4.5-2.el6.noarch

mysql-connector-java-5.1.12-2.el6.i686

ant-javamail-1.7.1-13.el6.i686

java-1.6.0-openjdk-javadoc-1.6.0.0-1.21.b17.el6.i686

java_cup-0.10k-5.el6.i686

[android@localhost ~]$

通過命令查看當前已經安裝了java的相關jdk,可以進行下一步。

(2) 安裝eclipse

從官網上下載的eclipse不需要按裝,直接解壓即可使用。如:

[android@localhost Base Env]$ ls

ADT-18.0.0.zip

android-sdk_r18-linux.tgz

Android開發環境搭建(Linux篇).doc

eclipse

eclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz

Linux環境搭建.doc

Linux 下Android 開發環境搭建 .doc

[android@localhost Base Env]$ rm -R eclipse

[android@localhost Base Env]$ ls

ADT-18.0.0.zip

android-sdk_r18-linux.tgz

Android開發環境搭建(Linux篇).doc

eclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz

Linux環境搭建.doc

Linux 下Android 開發環境搭建 .doc

[android@localhost Base Env]$tar -zxfeclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz

[android@localhost Base Env]$ls

ADT-18.0.0.zip

android-sdk_r18-linux.tgz

Android開發環境搭建(Linux篇).doc

eclipse

eclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz

Linux環境搭建.doc

Linux 下Android 開發環境搭建 .doc

[android@localhost Base Env]$cd eclipse

[android@localhost eclipse]$ls

about_files configuration eclipse.ini icon.xpm p2

about.html dropins epl-v10.html libcairo-swt.so plugins

artifacts.xml eclipse features notice.html readme

[android@localhost eclipse]$ll

總用量 540

drwxrwxr-x. 2 android android 4096 2月 17 03:06 about_files

-rw-rw-r--. 1 android android 18909 2月 8 21:55 about.html

-rw-rw-r--. 1 android android 88246 2月 17 03:06 artifacts.xml

drwxrwxr-x. 5 android android 4096 2月 17 03:06 configuration

drwxrwxr-x. 2 android android 4096 2月 17 03:06 dropins

-rwxr-xr-x. 1 android android 62814 2月 8 22:16 eclipse

-rw-rw-r--. 1 android android 407 2月 17 03:06 eclipse.ini

-rw-rw-r--. 1 android android 6 2月 8 21:36 epl-v10.html

drwxrwxr-x. 46 android android 4096 2月 17 03:06 features

-rw-rw-r--. 1 android android 9022 2月 8 21:54 icon.xpm

-rwxr-xr-x. 1 android android 266168 2月 8 21:54 libcairo-swt.so

-rw-rw-r--. 1 android android 8951 2月 8 21:36 notice.html

drwxrwxr-x. 5 android android 4096 2月 17 03:05 p2

drwxrwxr-x. 10 android android 36864 2月 17 03:06 plugins

drwxrwxr-x. 2 android android 4096 2月 17 03:06 readme

[android@localhost eclipse]$./eclipse

啟動eclipse之後,eclipse會自動創建並尋找workspace文件夾,可以直接點擊ok按鈕即可。eclipse的啟動過程如下圖所示:

⑻ 如何安裝Android SDK和設置ADB

安裝Android SDK和設置ADB步驟:

註:在安裝前,首先要配置JDK環境變數,JDK在java官網下載即可。

一、 JDK環境配置:

1. 安裝好jdk後右擊"我的電腦">屬性>高級>單擊"環境變數"按鈕

2. 點擊"系統變數"選項框中的"新建"按鈕

3. 在變數名右邊的文本框中輸入 JAVA_HOME

4. 在變數值右邊的文本框中輸入jdk的安裝路徑(如盤符:*Javajdk1.*)直到jdk文件夾根目錄,之後點確定保存退出

7.在變數名右邊的文本框中輸入CLASSPATH

8.在變數值右邊的文本框中輸入".;%JAVA_HOME%jrelib t.jar.;%JAVA_HOME%lib ools.jar" 點確定>確定>確定後保存退出

二、測試

1. 配置好環境後:開始>運行>cmd 在命令窗口輸入java -version

2. 回車後如果顯示有java version "1.*.x"則說明安裝好再輸入java>回車>javac>回車後,顯示相關jdk相關信息則說明配置成功

三、SDK安裝成功後,配置環境變數(SDK安裝需要「翻牆」在Google上網才能下載安裝包)

1. 滑鼠右鍵擊"我的電腦">屬性>高級系統設置>高級>單擊"環境變數"按鈕

2. 在系統變數中,雙擊下拉列表中變數為"Path"的項

3.在彈出的對話框中的變數值右邊的文本框的最後輸入adb.exe和fastboot.exe所在的盤符,如」; C:Workandroid-sdk_r07-windowsandroid-sdk-windowsplatform-tools」點擊確定退出設置即可

四、ADB調試

1. 將手機設置為debug模式,在開發者選項中

2. 手機通過USB線插上電腦,連接成功以後,第一次連接的手機會在手機屏幕上顯示一串字元,直接選擇接受。

3. 打開CMD,輸入:ADB devices,看是否出現以下

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
248227000396 device

如果出現

adb server is out of date.killing

ADB server didn't ACK

* failed to start daemon *

請按照以下步驟操作:

1. 關閉所有的防火牆軟體

2. 在cmd窗口輸入:C:Usersxxxx>adb nodaemon server, 系統提示「 cannot bind 'tcp:5037' 這是ADB所需要的5037埠被佔用了,關掉佔用的進程即可。

總結:安裝Android SDK和設置ADB時,先要安裝JDK,配置環境變數,然後安裝SDK,配置環境變數,最後ADB調試 順序不能弄反,JDK、SDK、ADB和fastboot工具要提前下載好

熱點內容
伏吟的演算法 發布:2024-05-07 00:51:48 瀏覽:829
安卓手機上的照相鍵在哪裡 發布:2024-05-07 00:51:45 瀏覽:605
ftp如何刪除頑固文件 發布:2024-05-07 00:50:57 瀏覽:250
idea文件夾顯示 發布:2024-05-07 00:30:04 瀏覽:249
怎麼把ps存儲為ai 發布:2024-05-07 00:30:03 瀏覽:273
參數內存緩存 發布:2024-05-07 00:28:54 瀏覽:746
android狀態欄高度 發布:2024-05-07 00:24:42 瀏覽:241
資料庫主文件 發布:2024-05-07 00:14:41 瀏覽:608
木頭創意解壓 發布:2024-05-07 00:11:55 瀏覽:215
密碼都能設置什麼 發布:2024-05-07 00:02:30 瀏覽:741