Mac에서 Android 개발을 수행하고이 새로운 전화는 adb 의 장치 목록에 표시되지 않습니다 . 다른 전화와 장치가 많이 작동하므로 설정이 좋습니다.
휴대 전화에서 디버깅을 사용하도록 설정 (설정-> 응용 프로그램-> 개발-> USB 디버깅)했지만 실행시 표시되지 않습니다. adb devices
Mac에서 Android 개발을 수행하고이 새로운 전화는 adb 의 장치 목록에 표시되지 않습니다 . 다른 전화와 장치가 많이 작동하므로 설정이 좋습니다.
휴대 전화에서 디버깅을 사용하도록 설정 (설정-> 응용 프로그램-> 개발-> USB 디버깅)했지만 실행시 표시되지 않습니다. adb devices
답변:
추가 업데이트 : USB 케이블의 가치를 과소 평가하지 마십시오. 때로는 케이블 교체만으로도 도움이됩니다.
최신 버전의 adb에 대한 업데이트 는 ~/.android/adb_usb.ini
제거해야합니다.
요약 : 공급 업체 ID를 추가하고 ~/.android/adb_usb.ini
adb를 다시 시작하십시오.
상세 정보 : 대부분의 경우 Mac이 전화 / 장치를 인식하도록하려면 아무 것도 수행하지 않아도됩니다. 진지하게, 99 %의 시간은 "그냥 효과가 있습니다."
즉, adb 를 재설정하는 가장 빠른 방법 은 다음 명령을 순서대로 다시 시작하는 것입니다.
adb kill-server
adb devices
그러나 때때로 adb devices
명령은 장치를 찾지 못합니다. 실험 또는 프로토 타입 또는 일반 장치로 작업하는 경우 알 수없고 표시되지 않을 수 있습니다.
장치의 "공급 업체 ID"에 대해 힌트를 제공하여 adb가 장치를 찾도록 도와 줄 수 있습니다. 16 진 공급 업체 ID를 파일에 넣어서 수행 할 수 있습니다.~/.android/adb_usb.ini
그러나 먼저 공급 업체 ID 값을 찾아야합니다. 다행히도 Mac에서는이 작업이 매우 쉽습니다. 시스템 정보 응용 프로그램을 시작하십시오 . 그것은에 위치한 /Applications/Utilities/
폴더 또는 상단이 화면의 상단 왼쪽에 당신은 "추가 정보 ..."버튼을 클릭, "이 매킨토시에 관하여"를 선택, Apple 메뉴를 통해 얻을 수 있습니다. 스크린 잡아요 :
"하드웨어"트리를 확장하고 "USB"를 선택한 다음 대상 장치를 찾으십시오. 위의 예에서 내 장치의 이름은 "SomeDevice"입니다 (실제 장치 제조업체를 숨기기 위해 Photoshop에서 수행했습니다). 또 다른 예는 "SAMSUNG_Android"로 표시되는 Samsung 태블릿입니다 (btw, Samsung 태블릿을 작동시키기 위해 특별한 작업을 수행 할 필요는 없습니다.) 어쨌든 장치를 클릭하면 세부 정보가 아래 창에 표시됩니다. 여기에 공급 업체 ID가 나열됩니다. 스크린 샷의 예제에서 값은 0x9d17
다음 명령에서이 값을 사용합니다.
echo 0x9d17 >> ~/.android/adb_usb.ini
adb_usb.ini
이전에 해당 파일을 가지고 있지 않은 경우 괜찮습니다 . 대부분의 경우 장치를 찾는 데 필요하지 않으므로 파일이 존재하지 않는 것은 드문 일이 아닙니다. 위의 명령은 명령을 작성하거나 이미 존재하는 경우 맨 아래에 추가합니다. 이제 위에 나열된 명령을 실행하여 adb를 다시 시작하십시오.
adb kill-server ; adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
123ABC456DEF001 device
OS X 용 Nexus 4 및 Nexus 5 전용 솔루션
내가 실행할 때 "연결된 장치 목록"에 나열된 장치가 없습니다. adb 장치
고치다:
'Settings'
: {} 개발자 옵션./adb 장치에서 장치를 나열하면 작동합니다.
EasyTether 응용 프로그램을 설치 한 경우 ADB를 방해 할 수 있습니다.
이 페이지 에서 다음 명령을 실행할 수 있습니다.
sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext
EasyTether 확장이 언로드됩니다.
테 더링을 위해 EasyTether를 다시 활성화해야하는 경우 다음을 사용할 수 있다고 생각합니다.
sudo kextload /System/Library/Extensions/EasyTetherUSBEthernet.kext
이것은 내 Samsung Galaxy S2에서 작동했습니다. 필자의 경우 재부팅 할 때마다 kextunload 명령을 실행해야했습니다.
다음 장치를 사용하는 경우 :
Samsung S3 GT-I9305 (Android 4.1.2)
Mac OS 10.6.8
다음을 수행하십시오.
# echo "0x04e8" >> ~/.android/adb_usb.ini
# adb kill-server
# adb devices
(삼성 장치를 사용하지 않는 경우 공급 업체 ID "0x04e8"를 올바른 공급 업체 값으로 변경)
여전히 작동하지 않으면 다음을 시도 할 수 있습니다.
(1) Samsung 장치에서 "USB 디버깅"을 비활성화하고 다시 활성화하십시오
(그리고 adb 명령을 다시 시도하십시오)
(2) USB 케이블을 분리했다가 다시 연결
(3) Samsung Kies 제거
(4) 안드로이드 파일 전송 설치
(5) Mac 및 Samsung 장치를 재부팅합니다
(6) 하드웨어 장치를 사용하여 Android 앱을 테스트하십시오.
장치를 연결했지만 갑자기 USB 케이블을 분리 한 후 "adb kill-server"이후에도 "adb 장치"가 더 이상 장치를 볼 수 없다고 가정하면 다음과 같이 시도 할 수 있습니다.
(1) Mac 전원 끄기
(2) Samsung 장치에서 "USB debuggine"비활성화
(3) Samsung 장치 전원 끄기
(4) Mac 전원 켜기
(5) Samsung 장치 전원 켜기
(6) "USB debuggine"활성화 삼성 장치에서
(7) USB 케이블 연결
(8) "adb 장치"실행
(9) 이제 연결된 장치가 표시됩니다
13/02/14 11:17:27,000 kernel[0]: USBMSC Identifier (non-unique): 0123456789ABCDEF 0x2207 0x10 0x222, 2
. VendorID는이 경우 0x2207
Transfer photos (PTP)
Nexus 5X 로 전환해야 했습니다.
( ) Transferring files
로 변경 해야했습니다 (*) USB tethering
. 전화 기본 화면의 "알림"풀다운에서이 옵션에 액세스했습니다.
믿거 나 말거나 USB 케이블을 교체하면이 문제가 해결되었습니다. 작동하지 않는 임의의 것을 사용하고 있었고 실제 Android 장치와 함께 제공된 것으로 전환하자마자 작동했습니다.
좋은 케이블이 작동했다는 또 다른 징후는, 엉터리 케이블로는 발생하지 않는 Android 파일 전송 앱이 즉시 시작되었다는 것입니다.
또한 충전 전용으로 지정된 USB 케이블을 사용하지 않아야합니다. 이것은 단지 나를 얻었다. 실제로 '충전 전용'이라는 라벨이 붙어 있습니다.
제 경우에는 USB 케이블 때문이었습니다.
두 가지 유형의 USB 케이블이 있음을 발견했습니다.
그리고 USB 케이블이 어떤 유형인지 알기가 어렵습니다. 이제 데이터 전송으로 케이블을 한 단계 업그레이드했습니다.
장치를 연결할 때 Console.app을 시작하고 오류를 확인하십시오. 나는 얻고 있었다
# The IOUSBFamily is having trouble enumerating a USB device that has been plugged in. It will keep retrying.
재부팅 후에도 지속되었으므로 결국 PRAM을 재설정하여 다시 작동했습니다.
PRAM 재설정을 수행하는 방법
나처럼 다른 답변을 모두 시도했지만 운이 없었 으면 시도해야 할 또 다른 것이 있습니다.
필자의 경우 (Android 4.3) 알림에서 USB 설정으로 이동하여 MTP 모드 (미디어 장치)에서 PTP (카메라)로 변경했으며 스위치가 켜지 자마자 장치가 ADT 장치 목록에 표시되었습니다.
케이블을 바꾸고 Mac을 인증하는 것만으로도 효과가있었습니다!
나는 같은 문제가 발생하여 다음과 같이 수정했습니다.
미래에 누군가에게 도움이되는 경우를 대비하여 "Show layout boundary"를 활성화 / 비활성화 할 때 실수로 설정에서 "USB 디버깅"을 해제했습니다. 따라서 먼저 "개발자 옵션"에서이 설정을 확인하십시오.
다른 USB 포트로 전환하여 adb 장치 목록에 표시되었습니다.
그것이 여기에 제안 된 모든 솔루션 중 나를 위해 일한 유일한 것입니다. 이 의견 에서 @ user908643에 의해 제안되었습니다 .
최신 Android의 또 다른 까다로운 점은 기기의 "사용"을 선택하여 기기 동작을 설정하는 것입니다.
예를 들어 "Use for"충전으로 설정되어 있으면 ADB에서 장치를 감지하지 못합니다. PTP / MTP로 전환하면 더 '활성'인 다른 동작이 자동으로 장치를 감지 할 수 있습니다.
삼성 갤럭시 s3를 감지하려는 경우 전화에서 설정-> 개발자 옵션-> USB 디버깅이 선택되어 있는지 확인하십시오.
나는 가능했다 USB debugging (Security settings)
외에도 개발자 옵션 USB debugging
에서 Redmi 주 4 .
망할 이상한하지만 Retina와 함께 2014 년 중반 MBP의 Thunderbolt 포트 옆에있는 USB 포트에 꽂는 것이 효과적이었습니다!
다른 USB 포트는 단순히 장치를 인식하지 못합니다.
LG G3에서 homebrew를 통해 ADB를 설치하고 (MAC OS X에 ADB 설치 ) USB 디버깅을 비활성화 / 활성화하여 작동시킬 수있었습니다 .
위의 답변 중 어느 것도 나를 위해 일하지 않았습니다. macOS Mojave에서 콘솔 앱을 열면 다음과 같은 오류가 표시 될 수 있습니다.
001076.240057 adb@(null): IOUSBUserClientLegacy::start: missing entitlement com.apple.appledfr.client
Mac PFRAM을 재설정해도 도움이되지 않았습니다. 이 문제를 해결하려면
USB 케이블을 통해 안드로이드 장치를 연결하십시오 (더블 USB-C 케이블이 저에게 효과적이었습니다).
설정-> ..- > 개발자 옵션으로 이동하여 USB 디버깅 인증 취소를 클릭하십시오.
안드로이드 폰이 재부팅됩니다.
설정-> ..-> 개발자 옵션으로 이동하여 USB 디버깅 이 활성화되어 있는지 확인하십시오 .
이제 macOS 터미널에 다음을 입력하십시오.
adb devices
당신은 당신의 장치가 나열된 볼 수 있습니다.
Google Pixel 2 휴대 전화에서 작동했습니다.
제 경우에는 USB 디버깅이 장치에서 활성화되지 않았지만 장치를 내 맥북에 연결해도 친숙한 "USB 디버깅 허용"대화 상자가 화면에 나타나지 않습니다.