우분투가 내 안드로이드 장치를 감지하지 못합니다

우분투가 내 안드로이드 장치를 감지하지 못합니다

나는 안드로이드를 처음 사용합니다. 방금 Android SDK를 다운로드하여 설치했습니다. 이제 Eclipse에서 애플리케이션을 실행하면 내 장치가 감지되지 않습니다. 나는 인터넷 검색을 통해 이것을 내 솔루션으로 생각해 냈지만 그것도 효과가 없었습니다.

51-android.rules는 다음과 같습니다.

SUBSYSTEMS=="usb", ATTR{idProduct}=="0bb4",  ATTR{idProduct}=="0c03", MODE="0666", GROUP="plugindev", OWNER="<username>"

그 후 노트북을 재부팅하고 다음 명령을 실행했습니다.

username@laptopname:~/Android/adt-bundle/sdk/platform-tools$ adb devices

내가 얻는 결과는 다음과 같습니다.

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
????????????    no permissions

편집하다

crazydeveloper@crazydeveloper:~$ lsusb
Bus 002 Device 004: ID 0bb4:0c03 HTC (High Tech Computer Corp.) 
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 04f2:b337 Chicony Electronics Co., Ltd 
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
crazydeveloper@crazydeveloper:~$ ls -l /dev/bus/usb/004/
ls: cannot access /dev/bus/usb/004/: No such file or directory
crazydeveloper@crazydeveloper:~$ 

편집: 2

답변을 제출한 후 내가 얻은 결과는 다음과 같습니다.

crazydeveloper@crazydeveloper:~$ ls -l /dev/bus/usb/002
total 0
crw-rw-r--  1 root root    189, 128 May  7 09:45 001
crw-rw-r--+ 1 root root    189, 129 May  7 09:45 002
crw-rw-rw-  1 root plugdev 189, 130 May  7 09:48 003

Micromax Canvas 2.2 A114 - Android 버전 4.2.2를 사용하고 있습니다.

도와주세요. 감사해요.

답변1

좋습니다. 이 작업을 수행하기 위한 모든 단계는 다음과 같습니다. 온라인에서 찾은 모든 응답에 문제가 있었습니다. 특정 순서나 단일 작업 솔루션 없이 모든 곳에서 조각 조각이 있었습니다(Android Studio, Jmonkey 3D 및 Ubuntu 14.04 실행).

만약에adb 장치Android 기기를 다음과 같이 표시합니다.?????????(권한 없음) 다음 지침을 따르십시오.

  1. 파일 생성/etc/udev/rules.d/51-android.rules

    sudo gedit /etc/udev/rules.d/51-android.rules
    
  2. 아래 내용을 복사하여 붙여넣으세요.

    SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0e79", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0502", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0b05", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="413c", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0489", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="091e", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="12d1", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="24e3", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2116", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0482", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="17ef", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1004", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="22b8", MODE="0666", GROUP="plugdev"    
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0409", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2080", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0955", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2257", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="10a9", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1d4d", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0471", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04da", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="05c6", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1f53", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04dd", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0fce", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0930", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="19d2", MODE="0666", GROUP="plugdev" 
    
  3. 파일 권한을 변경하려면 다음 명령을 실행하십시오.

    sudo chmod a+r /etc/udev/rules.d/51-android.rules
    
  4. USB를 통해 휴대폰을 연결하고 다음 명령을 실행하십시오.

    lsusb
    

    기기를 찾으세요. 예(Nexus 5):

    버스 003 장치 074: ID18d1:4ee7 구글 주식회사

    을 위한넥서스 5, 공급업체 ID는 다음과 같습니다.18d1, 내 버스는 버스야 "003" 장치를 연결했을 때 변경 사항이 표시되지 않으면lsusb, USB 케이블이 충전 전용일 수도 있습니다.

  5. 이제 다음 명령을 사용하여 규칙을 다시 로드합니다.

    sudo udevadm control --reload-rules
    sudo service udev restart
    sudo udevadm trigger
    
  6. 이제 장치가 허용되는지 확인하세요.플러그데브사용자 그룹 액세스

    ls -l /dev/bus/usb/<bus number from step 4>
    

    예:

    ls -l /dev/bus/usb/003
    crw-rw-rw- 1 root plugdev 189, 329 Jul  3 18:23 074
    
  7. 달리다adb 장치권한이 올바른지 확인하고 즐기십시오!

메모:아직 생성하지 않은 경우플러그데브그룹과사용자 이름을 추가했습니다(권한이 거부된 경우 다음 명령 앞에 "sudo"를 추가하세요):

  1. Plugdev 그룹 추가:

    groupadd plugdev
    
  2. 당신의사용자 이름에게플러그데브그룹(useradd -G {그룹 이름} 사용자 이름):

    useradd -G plugdev billy
    
  3. udev를 다시 시작하십시오(사용자 그룹을 업데이트하려면 로그오프했다가 다시 로그인해야 할 수도 있음).

    sudo service udev restart
    

답변2

2가지를 변경해야 합니다.

  1. 51-android.rules 파일에서 첫 번째 'ATTR{idProduct}'를 'ATTR{idVendor}'로 변경합니다.

  2. 터미널에서 다음 명령을 실행하세요.

    sudo ./adb kill-server
    sudo ./adb start-server
    sudo ./adb devices
    

답변3

plugdev가 아닌 그룹을 사용해 보세요 plugindev. 그런 다음 udev를 다시 시작하십시오.

sudo udevadm control --reload-rules
sudo service udev restart

그래도 작동하지 않으면 장치가 lsusb와 정확히 어디에 연결되어 있는지 알아보세요. 그런 다음 권한을 확인하십시오.

ls -l /dev/bus/usb/YOUR_USB_BUS_NO/

우리에게 주어진 사실 lsusb:

Bus 002 Device 004: ID 0bb4:0c03 HTC (High Tech Computer Corp.)

이는 귀하의 모바일이 장치 004로 버스 002에 연결되어 있음을 의미합니다. 따라서 udev는 장치 개체를 생성했습니다 /dev/bus/usb/002/004.

다음 명령을 사용하여 장치 권한을 표시하십시오.

ls -l /dev/bus/usb/002/004

임시 해결 방법으로 다음 명령을 사용하여 장치를 모두 읽기/쓰기 가능하게 만들 수 있습니다(휴대폰이 연결되어 있는지 확인).

sudo chmod 666 /dev/bus/usb/002/004

그런 다음 다시 시도해 보세요 adb devices.

또한 나는 udev 규칙의 끝에 OWNER="<username>". 당신은 실제로 그것을 로 대체했지요 OWNER="crazydeveloper", 그렇죠?

귀하의 권한은 괜찮습니다. udev는 장치를 선택하고 해당 권한을 666으로 설정하고 그룹을 Plugdev로 설정했습니다. 어떤 이유로 소유자를 미친 개발자로 설정하지는 않았지만 그다지 중요하지 않습니다.

당신이 Plugdev 그룹의 구성원인지 확인하십시오. 다음 명령을 사용하십시오.

sudo useradd -G plugdev crazydeveloper

그런 다음 로그오프하고 휴대폰의 플러그를 뽑은 다음 다시 로그온하고 연결한 후 adb devices다시 시도하십시오. 무슨 일이 일어나고 있는지 알아봅시다.

답변4

내 안드로이드 장치에는 문제가 있는 것 같은 USB 디버깅이 있어서 개발자 설정으로 가서 그것을 껐습니다. USB 케이블을 다시 연결하자 USB 저장소를 켤 수 있는 창이 나타났습니다. 이로 인해 Ubuntu 14.04가 Android 장치를 감지했습니다. 모든 장치에 이 설정이 있는지는 모르겠지만 문제는 해결되었지만 다른 방법은 모두 시도했습니다. 감사합니다

관련 정보