승인되지 않은 Android ADB 기기


93

구성 :

  • 윈도우 8.1
  • ADB 버전 : 1.0.32
  • 스마트 폰 : Oneplus One

문제

말하는대로 삼성 드라이버를 설치했습니다. ADB devices 명령을 실행하면 무단 .

이미 시도 :

  1. 이 게시물에서 말한 모든 것을 수행했습니다 : https://stackoverflow.com/a/25546300/1848376

    하지만 문제는 전화로 연결을 수락해야한다는 메시지가 표시되지 않는다는 것입니다.

  2. 명령을 실행할 때 adb shell답은 다음과 같습니다.

    error: device unauthorized.
    This adbd's $ADB_VENDOR_KEYS is not set; try 'adb kill-server' if that seems wrong.
    Otherwise check for a confirmation dialog on your device.
    

"adb kill-server"를 수행했지만 아무것도 변경하지 않았습니다. 왜?


위의 모든 것을 시도한 후, 다른 사람이 작동하는지 확인하기 위해 낮은 AVD를 다운로드하기 시작했습니다. API 28 및 27은 부팅 중에 여전히 멈췄지만 API 26은 바로 시작되었습니다. Android Studio 3.1.3 나중에 제거하고 다시 설치하려고하지만 마침내 다시 작동하게되어 기쁩니다. 수정없이 거의 일주일 동안 중요한 프로세스 오류를 처리 한 후 Windows 10을 새로 설치 한 후 Android Studio 3.1을 새로 설치합니다.
Jon

답변:


208
  1. USB DEBUGGING Authorization 취소를 시도하십시오.
  2. USB 디버깅을 다시 활성화하십시오.

효과가있었습니다.


8
USB 디버깅을 다시 활성화 할 때이 장치에서 항상 USB 디버깅 허용 확인란을 선택하는 것이 중요 할 수 있습니다. 이 옵션은 USB 디버깅을 다시 활성화 할 때 Android 장치를 USB에 연결 한 경우에만 표시됩니다.
joshgoldeneagle

새 컴퓨터 (Macbook)로 이동 한 후 장치에서 USB 디버깅을 비활성화 한 다음 활성화하기 만하면되었습니다.
Nancy

어쨌든 먼저 플러그를 뽑았다가 다시 연결해야합니다.
TGrif

답변 주셔서 감사합니다. 당신은 내 시간을 절약했습니다.
Kelvin Low

나는 내가 "다시 켜려고 했니?" :)
jediz

45

Thankgod xda 개발자가 존재합니다 : http://forum.xda-developers.com/verizon-lg-g3/help/unable-to-access-adb-t2830087

C : Users / $ Name / .android에서 adbkey 파일을 삭제해야했습니다. adbkey.pub가 누락되었습니다.

이 후 다시 시작하면 두 파일이 모두 있습니다.

작동하지 않는 경우 :-USB DEBUGGING Authorization 취소를 시도하십시오. -USB 디버깅을 다시 활성화하십시오.


1
Mac에서이 키는 어디에 있습니까?
mosaad

1
>이 후 다시 시작하면 두 파일이 모두 재부팅됩니까? 저는 Windows를 사용 중이며 사라지지 않는 "승인되지 않은"장치에 갇혀 있습니다! (하지만 재부팅하지 않았습니다. 2 백만 개의 창이 열리기 때문입니다.)
tbone

1
@tbone 나는 그것이 늦은 대답이라는 것을 알고 있지만 adb 서버를 다시 시작하면됩니다.
Carlos EL Augusto

2
그 파일의 모든 것을 삭제했고 네트워크를 통한 ADB뿐만 아니라 USB도 수정했습니다
Ben

2
이름 .android.old이 안전한쪽에 있도록 이름이 바뀌 었지만 adb 서버를 다시 시작하고 승인을 취소하자마자 전화가 즉시 저에게 메시지를 표시했습니다! @julestruong 감사합니다!
Richard.Davenport

27

순서대로 :

    adb kill-server
  • 장치 설정에서 개발자 옵션으로 이동하여 usb 디버깅을 사용 중지하십시오.

  • USB 디버깅 인증 취소를 누르고 확인을 클릭하십시오.

  • USB 디버깅 활성화

    adb start-server

2
Ubuntu에서 루트로 명령을 실행했는데 이로 인해 문제가 해결되었습니다. su 없이는 작동하지 못했습니다 (Ubuntu 18).
petobens

20

~ / .android 폴더 에서 다음 파일을 제거했습니다 .

  • adbkey
  • adbkey.pub

장치 내에서 ADB를 비활성화하고 활성화했으며 이제 작동합니다 ...


1
adbkey파일 만 봤기 때문에 지웠는데 매력처럼 작동 했어요. 감사!
Reeshabh Ranjan

18

개발자 옵션에서

  1. USB 디버깅을 활성화합니다.

여기에 이미지 설명 입력

  1. 승인하십시오.

여기에 이미지 설명 입력

(개발자 옵션 메뉴가 없을 경우, 개발자가 되려면 Phone State 메뉴의 빌드 번호 3 배를 클릭해야합니다. 개발자 옵션 메뉴를 선택할 수 있습니다.)

여기에 이미지 설명 입력


8

기존 adbkeys 삭제

또는

adbkeys 이름 바꾸기

모범 사례는 백업을 제공하므로 키 이름바꾸는 것입니다.

cd ~/.Android

mv adbkey adbkey2

mv adbkey.pub adbkey.pub2

다음 서버 중지 및 시작

cd ~/Android/Sdk/platform-tools

장치 찾기 /Android/Sdk/platform-tools$ ./adb devices

/Android/Sdk/platform-tools$ ./adb kill-server

/Android/Sdk/platform-tools$ ./adb start-server

그런 다음 에뮬레이터를 중지합니다. AVD 관리자를 열고 아래쪽 화살표를 클릭 한 다음 데이터 지우기 를 클릭 합니다.

에뮬레이터를 다시 시작하십시오. 그러면 모든 것이 잘 작동합니다. :)


5

개발자 옵션에서 "USB를 통해 앱 확인"을 선택 취소 한 다음 "USB 디버깅"을 켜고 끄십시오. 저와 함께 작동합니다.


이 방법은 저에게 효과적이었습니다. 처음에는 "USB 디버깅"이 켜져 있었고 "USB를 통해 앱 확인"을 선택 해제했지만 도움이되지 않았습니다. "USB 디버깅"을 켠 후 작동했습니다!
Jackie Yeh


4

Android 스튜디오 에서 연결된 장치를 Run menu > Run보여줍니다 OFFLINE ....

다음은이를 해결하기 위해 따르는 절차입니다.

  1. (먼저 아래 참고를 읽으십시오.) 삭제 ~/.android/adbkey(또는로 이름을 바꾸 십시오. ~/.android/adbkey2어떤 이유로 든 다시 원할 경우 더 좋습니다 . )
    참고 :이 단계를 수행했지만 모든 작업을 수행 한 후에도 문제가 해결되지 않았습니다. 아래 단계에서 작동하므로이 단계가 필요한지 확실하지 않습니다.

  2. locate platform-tools/adb
    참고 실행 : 아래 명령에서 여기에서 오는 경로를 사용 하십시오 .

  3. adb 서버를 종료합니다.
    sudo ~/Android/Sdk/platform-tools/adb kill-server

  4. 당신은 얻을 것이다 Allow accept..장치에 메시지 팝업. 그것을 받아들이십시오. 이것은 문제를 해결하는 중요합니다.

  5. adb 서버를 시작합니다.
    sudo ~/Android/Sdk/platform-tools/adb start-server

  6. Android 스튜디오에서 Run menu > Run다시 수행 하십시오. (휴대폰 제조업체 이름)
    과 같은 내용이 표시됩니다 Samsung ....
    또한 이번에는 기기에 APK를 오류없이 올바르게 설치합니다.

도움이 되었기를 바랍니다.


2
  1. 먼저 제거 adbkey하고 adbkey.pub로부터 .android홈 디렉토리에있는 디렉토리.
  2. .android710 권한 $ chmod 710 .android/및 소유권으로 집에 디렉토리를 만드십시오 chown -R <user>:<user> .android/.. 전의:

    $ chmod 710 .android/
    $ chown -R ashan:ashan .android/
  3. 모바일에서 개발자 옵션으로 이동하여 옵션을 누릅니다. Revoke USB debugging authorizations

  4. 모든 켜고 끌 USB DebuggingDeveloper Options장치와 컴퓨터에서 장치를 분리합니다.

  5. 장치를 다시 연결하고 처음에는 Developer Options. 그런 다음 USB debugging.

  6. 이 시점에서 모바일에서 권한을 요청하는 메시지가 표시됩니다. 참고 : 확인란 always accept from this ….옵션을 선택하고 확인을 클릭 해야합니다 .

  7. 이제 컴퓨터에서 adb 서버를 시작합니다 adb start-server..

  8. 바라건대 명령을 내릴 때 : adb devices이제 장치가 승인 된 것을 볼 수 있습니다.


1

나도이 문제에 맞았다. Nexus 5X에서 AOSP의 맞춤 빌드를 사용하고 있습니다. build / core / main.mk에 한 줄을 추가했습니다.

diff --git a/core/main.mk b/core/main.mk
index a6f829ab6..555657539 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -362,6 +362,8 @@ else # !enable_target_debugging
   ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=0
 endif # !enable_target_debugging

+ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1
+
 ## eng ##

 ifeq ($(TARGET_BUILD_VARIANT),eng)

이제 adb shell잘 작동합니다.

이러한 자료는 유용합니다 (중국 기사) : http://www.voidcn.com/blog/kc58236582/article/p-6335996.html , http://blog.csdn.net/fanmengke_im/article/details/28389439



1

이 페이지에 나열된 방법 중 어느 것도 저에게 효과가 없었습니다. 구체적으로 특별히:

  • USB 디버깅 인증 취소를 선택할 때 설정 앱이 충돌하는 문제가 발생했습니다.
  • LineageOS 14 x86_64를 실행하고있었습니다.
  • 네트워크를 통해 ADB를 사용하고있었습니다.
  • /data/misc/adb에는 포함되어 있지adb_keys 파일을
  • 내 로컬 제거 ~/.android/adbkey 도움이되지 않았습니다.
  • 로컬 터미널에서 루트 액세스 권한이 있습니다.
  • 확인 대화 상자가 나타나지 않았습니다.
adb: error: failed to get feature set: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
- waiting for device -

결국, 나는 매우 유용한 게시물을 발견 여기에 수동의 내용을 넣어 제안하는 ~/.android/adbkey.pub내부/data/misc/adb/adb_keys 파일.

그들은 다음 두 가지 방법 중 하나를 제안했습니다.

  1. 다른 작동 장치에서 adb_keys파일을 컴퓨터로 복사 합니다.

    # On the other Android device
    cp /data/misc/adb/adb_keys /sdcard
    # From your computer
    adb pull /sdcard/adb_keys .

    그런 다음 작업 adb_keys파일을라는 이름의 문제가있는 Android 기기의 sdcard (웹 또는 MTP 사용) adb_keys에 넣은 다음 파일을 올바른 경로에 복사합니다.

    # On the problematic device
    cp /sdcard/adb_keys /data/misc/adb/adb_keys
  2. 다른 방법은 디렉토리 adbkey.pub에서 컴퓨터를 복사하여 ~/.android/라는 이름의 문제가있는 Android 기기의 sdcard (웹 또는 MTP 사용) adb_keys에 넣은 다음 파일을 올바른 경로에 복사하는 것입니다.

    # On the problematic device
    cp /sdcard/adbkey.pub /data/misc/adb/adb_keys

    (참고 : 이 방법에 대한 자세한 내용은 SO에 대한 유사한 답변 이 있습니다.)

내 컴퓨터에서 웹 서버를 실행하고 curlAndroid에 설치 su했으므로 터미널에서 실행하여 Android 장치에서 다음을 실행했습니다.

cd /data/misc/adb
curl 192.168.1.35:8080/adbkey.pub > adb_keys

adb데몬 (사용 adb kill-server)과 BAM을 죽였습니다 ! adb는 처음부터 있었어야처럼 쉘, 벌금을했다.

여기에 설명 된 방법이 저에게했던 것처럼 작동하기를 바랍니다.


1

앱이 유해한 프로그램으로 감지되고 있습니다. "USB를 통해 앱 확인"옵션을 끕니다. "USB 디버깅"과 동일한보기에 있습니다.


0

디버그 모드를 승인하기 만하면됩니다.
1. 장치가 PC에 연결되어 있는지 확인하십시오.
2.
실행-> Android 프로세스에 디버거 연결 로 이동하여 Android-Studio를 통해 디버그 모드 승인을 허용
합니다. 장치에서 디버그 모드 허용을위한 팝업 창이 표시되면
확인을 누릅니다. 끝난.
누군가에게 도움이되기를 바랍니다.


0

내 안드로이드 스튜디오를 다시 설치 한 후에도 같은 문제가 발생했습니다. 내 adb를 다시 작동시키기 위해 내가 한 작업은 다음과 같습니다.

-path to C:\Users\User\AppData\Local\Android\sdk\platform-tools
-Shift+r.click and start command from here instead.

0

나중에 이것을 만나는 사람에게도 도움이 될 수 있습니다. 사용자 명령 프롬프트에서 adb를 사용하려는 정확한 문제가 발생했으며 위의 답변은 도움이되지 않았지만 관리자 명령 프롬프트에서 실행할 때 "adb kill-server"로 문제가 해결되었습니다.


0

이것은 나를 위해 일했습니다.

rm ~ / .android / adbkey.pub

sudo ./adb kill-server

sudo ./adb start-server

sudo ./adb -s emulator-5554 install ~ / apk_to_install.apk

sudo 권한으로 adb를 실행하는 것이 좋은 아이디어인지 확실하지 않지만 작동하는 유일한 방법이었습니다. 문안 인사.


0

루트가 아닌 사용자로서 사용자 지정 복구 (Philz)에 연결하려고 할 때 권한 오류가 발생했을 때 이것을 루트로 받았습니다. 그래서 adb 서버를 죽이고 내 사용자 계정의 .android 하위 디렉토리를 / root에 복사하고 -R을 root.root에 복사 한 다음 adb 서버를 다시 시작했습니다. 나는 ~ 안에있다!


-1

스마트 폰에서 온 디바이스 개발자 옵션을 활성화했다고 가정합니다. 그렇지 않은 경우 Android에서 제공하는 단계를 살펴볼 수 있습니다. http://developer.android.com/tools/device.html#developer-device-options


네,했습니다. 그리고 스위치를 껐다가 켰습니다.
julestruong

이 링크 ( code.google.com/p/android/issues/detail?id=175077 ) 에 따르면 "플랫폼 도구 23 rc1"에이 문제가있는 것 같습니다. "$ adb version"cmd로 플랫폼 도구 버전을 찾을 수 있습니다. 링크는 빌드 도구 버전 22로 다시 전환하여 문제를 해결한다고 말합니다.
Dhunju_likes_to_Learn

나는 plateform 도구 22를 다운로드하고 sdk 디렉토리에서 교체했지만 작동하지
않았습니다

-1

FIRE STICK 4K의 경우 실제로 대화 상자에 다음과 같이 표시됩니다.

그렇지 않으면 장치에서 확인 대화 상자를 확인하십시오.

실제로 다른 방에있는 TV에는 확인 대화가있었습니다. Doh '!


1
아마도 이것은 질문에 대한 부수적 인 의견 일 수 있지만 질문이 다른 유형의 장치와 관련되어 있기 때문에 대답이 아닙니다.
Jairo

-2

나는이 문제가 있었고 키를 삭제해도 해결되지 않았습니다 (적어도 키를 삭제해도 문제가 해결되지 않았고 수정 한 후에도 효과가 있었을 수 있습니다)

실제로 내 sdk-tools 버전과 Android Studio 버전간에 불일치가있었습니다. 내 도구를 업데이트 한 후에도 여전히 작동하지 않았지만 AS (1.4로)를 업데이트 한 후 모든 것이 다시 정상적으로 작동했습니다.

항상 sdk-tools와 AS 버전을 함께 업데이트하십시오.)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.