Android/ADB

ADB 활용 고급 팁 및 문제 해결

임베디드 친구 2025. 2. 20. 09:23
728x90
반응형

ADB 활용 고급 팁 및 문제 해결

Android Debug Bridge(ADB)는 Android 기기와 컴퓨터 간의 통신을 가능하게 하는 강력한 도구입니다. ADB를 활용하면 개발과 디버깅이 훨씬 편리해지지만, 때때로 예상치 못한 문제들이 발생할 수 있습니다. 이번 포스팅에서는 ADB 활용에 대한 고급 팁과 함께 자주 발생하는 문제 해결 방법을 다루고, 특히 기기를 인식하지 못하는 경우의 해결 방법과 adb sideload를 이용한 업데이트 및 롬 설치 방법을 설명하겠습니다.

1. ADB가 기기를 인식하지 못할 때 해결 방법

ADB를 사용할 때 가장 흔히 겪는 문제 중 하나는 기기가 제대로 인식되지 않는 것입니다. 이러한 경우에는 다음과 같은 단계를 통해 문제를 해결할 수 있습니다.

1.1 USB 디버깅 활성화 여부 확인

ADB를 사용하려면 먼저 Android 기기에서 USB 디버깅을 활성화해야 합니다.

  1. 개발자 옵션 활성화:
    • 설정 → 휴대전화 정보 → 빌드 번호를 7번 연속 탭하여 개발자 모드를 활성화합니다.
  2. USB 디버깅 활성화:
    • 설정 → 시스템 → 개발자 옵션 → USB 디버깅을 활성화합니다.

1.2 adb devices 명령어로 기기 확인

ADB가 정상적으로 동작하는지 확인하려면 다음 명령어를 실행해 봅니다.

adb devices

이 명령어를 실행했을 때 기기가 device 상태로 표시되지 않는다면 아래 단계를 시도해 보십시오.

1.3 USB 연결 확인 및 드라이버 재설치

  • USB 케이블과 포트를 변경해 봅니다.
  • Windows 사용자의 경우, Android USB 드라이버를 설치해야 합니다.
    • Google USB Driver 다운로드
    • Device Manager에서 Android Composite ADB Interface 드라이버가 정상적으로 설치되었는지 확인합니다.

1.4 ADB 서버 재시작

ADB 서버를 다시 시작하면 연결 문제가 해결될 수 있습니다.

adb kill-server
adb start-server
adb devices

1.5 권한 문제 해결 (Linux 및 macOS)

Linux 또는 macOS에서 ADB가 실행되지 않는다면 권한 문제일 가능성이 있습니다. 다음 명령어를 실행하여 해결할 수 있습니다.

sudo adb kill-server
sudo adb start-server
adb devices

또한, ~/.android/adbkey 파일을 삭제하고 다시 ADB를 실행해 볼 수도 있습니다.

rm ~/.android/adbkey*
adb start-server
adb devices

2. adb sideload를 활용한 업데이트 및 롬 설치

adb sideload는 OTA(Over-the-Air) 업데이트 또는 커스텀 롬을 설치할 때 유용한 기능입니다. 이를 사용하여 ZIP 파일 형태의 업데이트를 간편하게 적용할 수 있습니다.

2.1 adb sideload를 이용한 업데이트 방법

  1. 기기를 리커버리 모드로 부팅
    • 대부분의 기기에서 전원 버튼 + 볼륨 업 버튼을 동시에 눌러 리커버리 모드로 진입할 수 있습니다.
    • 리커버리 메뉴에서 Apply update from ADB 옵션을 선택합니다.
  2. ADB로 기기 확인기기가 sideload 상태로 표시되면 정상적으로 연결된 것입니다.
  3. adb devices
  4. 업데이트 파일 전송위 명령어에서 update.zip은 설치하려는 ZIP 파일의 이름입니다.
  5. adb sideload update.zip
  6. 설치 완료 후 재부팅
    • 업데이트가 완료되면 Reboot system now 옵션을 선택하여 기기를 재부팅합니다.

2.2 adb sideload 문제 해결

만약 adb sideload 중 오류가 발생한다면 다음과 같은 해결 방법을 시도해 볼 수 있습니다.

  • ZIP 파일이 손상되었는지 확인: 다운로드한 ZIP 파일이 정상적으로 다운로드되었는지 확인 후 다시 시도합니다.
  • USB 케이블 변경: 연결이 불안정하면 전송 중 오류가 발생할 수 있습니다.
  • ADB 버전 확인: adb version 명령어를 실행하여 최신 버전인지 확인합니다.
  • ADB 다시 실행: adb kill-server && adb start-server 명령어로 ADB를 재시작한 후 다시 시도합니다.

3. ADB 관련 자주 발생하는 오류와 해결 방법

ADB를 사용할 때 다음과 같은 오류가 발생할 수 있으며, 이에 대한 해결 방법을 정리하였습니다.

3.1 adb: command not found

이 오류는 ADB가 시스템의 환경 변수에 제대로 등록되지 않았거나 설치되지 않은 경우 발생합니다.

해결 방법:

  • ADB가 설치된 경로를 확인하고 환경 변수에 추가합니다.

  • 직접 ADB 명령을 실행할 경우, 전체 경로를 사용합니다.

    ~/Android/Sdk/platform-tools/adb devices

3.2 device unauthorized

ADB에서 기기가 unauthorized 상태로 표시되면 기기에서 USB 디버깅 권한을 허용하지 않았을 가능성이 높습니다.

해결 방법:

  1. 기기에서 USB 디버깅을 해제한 후 다시 활성화합니다.
  2. USB를 다시 연결한 후 디버깅 허용 창이 나타나면 '허용'을 선택합니다.
  3. adb kill-server && adb start-server 명령을 실행하여 ADB를 다시 시작합니다.

3.3 no devices/emulators found

이 오류는 ADB가 실행 중이지만, 연결된 기기를 감지하지 못하는 경우 발생합니다.

해결 방법:

  • USB 케이블과 포트를 변경합니다.
  • adb kill-server && adb start-server 명령으로 ADB를 재시작합니다.
  • 개발자 옵션에서 USB 디버깅을 해제 후 다시 활성화합니다.
  • lsusb (Linux) 또는 devmgmt.msc (Windows)를 이용해 기기가 연결되었는지 확인합니다.

결론

이번 포스팅에서는 ADB를 활용한 고급 팁과 함께, 기기를 인식하지 못할 때의 해결 방법, adb sideload를 활용한 업데이트 및 롬 설치 방법, 그리고 자주 발생하는 오류와 해결 방법에 대해 살펴보았습니다. ADB는 매우 강력한 도구이지만, 올바르게 설정하고 문제를 해결하는 방법을 이해하면 더욱 효과적으로 사용할 수 있습니다.

728x90
반응형