안드로이드 스마트폰에 앱을 설치할 때 가장 먼저 떠오르는 것은 무엇일까요? 아마 구글 플레이 스토어일 겁니다. 플레이 스토어에서 앱을 다운로드하고 설치하는 것이 가장 간편한 방법이긴 하지만, 유일한 방법은 결코 아닙니다. 예를 들어, 언제든지 APK 파일을 이용해 앱을 설치할 수 있습니다. APK 파일은 소프트웨어의 설치 파일과 같은 역할을 하며, 크롬 같은 웹 브라우저로 다운로드한 후 필요할 때 설치하면 됩니다. 다만 브라우저의 '출처를 알 수 없는 앱' 권한을 활성화해야 한다는 조건이 있습니다.
그런데 위 방법은 기기에 직접 접근할 수 있어야 가능합니다. 만약 시스템 파일이 손상되어 UI가 충돌하고 휴대폰에 접근할 수 없게 된다면 어떻게 해야 할까요? 이런 상황에서는 서드파티 UI 앱을 설치해야만 기기를 다시 정상적으로 사용할 수 있는데, 바로 이때 ADB가 빛을 발합니다. ADB를 사용하면 컴퓨터를 통해 기기를 제어할 수 있으며, 이런 비상 상황에서 앱을 설치할 수 있는 거의 유일한 방법입니다.
ADB는 이처럼 여러 상황에서 생명줄이 될 수 있는 강력한 도구입니다. 따라서 ADB에 대해 잘 알아두고 사용법을 익혀두면 분명 도움이 됩니다. 이번 글에서는 ADB가 무엇인지, 어떻게 작동하는지 살펴보고, ADB를 설정하고 이를 통해 기기에 앱을 설치하는 전 과정을 단계별로 안내해 드리겠습니다.
ADB 명령어로 APK 설치하는 방법
ADB란 무엇인가?
ADB는 Android Debug Bridge(안드로이드 디버그 브리지)의 약자입니다. 안드로이드 SDK(Software Development Kit)에 포함된 명령줄 도구로, USB 케이블로 기기를 컴퓨터에 연결하면 PC에서 안드로이드 스마트폰을 제어할 수 있게 해줍니다. 앱 설치 및 삭제, 파일 전송, 네트워크나 Wi-Fi 연결 정보 확인, 배터리 상태 점검, 스크린샷 촬영, 화면 녹화 등 다양한 작업을 수행할 수 있습니다.
ADB에는 기기에서 다양한 작업을 수행할 수 있는 명령 코드 세트가 마련되어 있습니다. 사실 ADB는 고급 작업까지 수행할 수 있는 매우 강력한 도구라서, 능숙하게 다루려면 상당한 연습과 학습이 필요합니다. 코딩의 세계를 더 깊이 탐구할수록 ADB의 활용도는 더욱 높아집니다. 다만 이번 글에서는 내용을 쉽게 유지하기 위해 기본적인 부분과 주로 ADB로 APK를 설치하는 방법만 다루겠습니다.
ADB는 어떻게 작동하는가?
ADB는 USB 디버깅을 통해 기기를 제어합니다. USB 케이블로 컴퓨터와 연결하면 ADB 클라이언트가 연결된 기기를 감지하고, 명령 프롬프트(또는 명령줄)를 매개로 컴퓨터와 안드로이드 기기 간에 명령과 정보를 주고받습니다. 특수한 코드나 명령어를 입력하면 안드로이드 기기의 프로세스와 작업을 제어할 수 있습니다.
ADB 사용을 위한 사전 준비 사항
ADB 명령어로 APK를 설치하기 전에 다음 준비 사항을 먼저 확인해야 합니다.
1. 기기 드라이버 설치 확인
가장 먼저 PC에 기기 드라이버가 설치되어 있는지 확인해야 합니다. 대부분의 안드로이드 스마트폰은 자체 드라이버를 가지고 있으며, 휴대폰을 PC에 연결하면 자동으로 설치됩니다. 만약 드라이버가 없다면 별도로 다운로드해야 합니다. 넥서스 같은 구글 기기는 SDK에 포함된 'Google USB Driver'를 설치하면 되고(뒤에서 자세히 설명), 삼성, HTC, 모토로라 등 다른 제조사는 각 공식 홈페이지에서 드라이버를 제공합니다.
2. USB 디버깅 활성화
다음으로 안드로이드 스마트폰에서 USB 디버깅을 활성화해야 합니다. 이 옵션은 개발자 옵션에서 찾을 수 있으며, 먼저 설정 메뉴에서 개발자 옵션을 활성화해야 합니다.
a. 설정을 열고 시스템 옵션을 클릭합니다.
b. 개발자 옵션을 탭합니다.
c. 아래로 스크롤하여 디버깅 섹션에서 USB 디버깅 설정을 찾습니다. 스위치를 켜기만 하면 준비 완료입니다.
3. ADB 다운로드 및 설치
마지막으로 컴퓨터에 ADB를 다운로드하고 설치해야 합니다. 설치 과정은 다음 섹션에서 자세히 안내해 드리겠습니다.
윈도우에 ADB 다운로드 및 설치하는 방법
앞서 말했듯이 ADB는 안드로이드 SDK의 일부이므로, 해당 툴킷의 전체 설치 패키지를 다운로드해야 합니다. 아래 단계에 따라 윈도우 10에 ADB를 다운로드하고 설치하세요.
1. Android SDK Platform Tools 다운로드 페이지로 이동합니다.
2. 'Download SDK Platform-Tools for Windows' 버튼을 클릭합니다. 사용 중인 운영체제에 따라 다른 옵션을 선택할 수도 있습니다.
3. 약관에 동의하고 Download 버튼을 클릭합니다.
4. ZIP 파일이 다운로드되면, 툴킷 파일을 보관할 원하는 위치에 압축을 해제합니다.
폴더 안에서 다른 도구들과 함께 'ADB' 파일을 확인할 수 있습니다. 이것으로 설치 과정은 끝입니다. 이제 다음 단계인 ADB를 이용한 APK 설치로 넘어가겠습니다.
ADB로 기기에 APK 설치하는 방법
ADB 명령어로 APK를 설치하기 전에, ADB가 올바르게 설정되어 있고 연결된 기기가 정상적으로 인식되는지 먼저 확인해야 합니다.
1. 안드로이드 기기를 컴퓨터에 연결한 후, SDK Platform Tools가 담긴 폴더를 엽니다.
2. 폴더 안에서 Shift 키를 누른 상태로 마우스 오른쪽 버튼을 클릭합니다. 메뉴에서 '여기에 명령 창 열기' 옵션을 선택합니다. 명령 창 열기 옵션이 없다면 '여기에 PowerShell 창 열기'를 클릭하세요.
3. 명령 프롬프트/PowerShell 창에 '.\adb devices'라고 입력하고 Enter 키를 누릅니다.
4. 그러면 명령 창에 연결된 기기의 이름이 표시됩니다.
5. 만약 기기 이름이 나타나지 않는다면, 기기 드라이버에 문제가 있는 것입니다.
6. 이 문제는 간단히 해결할 수 있습니다. 컴퓨터 검색창에서 장치 관리자(Device Manager)를 엽니다.
7. 목록에서 안드로이드 기기를 찾은 후 오른쪽 클릭하여 드라이버 업데이트 옵션을 선택합니다.
8. 다음으로 온라인에서 드라이버 검색 옵션을 클릭합니다. 새 드라이버가 있다면 컴퓨터에 자동으로 다운로드되어 설치됩니다.
9. 다시 명령 프롬프트/PowerShell 창으로 돌아가서 앞서 입력한 것과 동일한 명령어를 입력하고 Enter 키를 누릅니다. 이제 화면에 기기 이름이 표시될 것입니다.
이렇게 되면 ADB가 성공적으로 설정되었고 기기가 제대로 연결된 것입니다. 이제 ADB 명령어를 통해 휴대폰에서 원하는 작업을 수행할 수 있습니다. 명령어는 명령 프롬프트 또는 PowerShell 창에 입력하면 됩니다. ADB로 기기에 APK를 설치하려면 해당 APK 파일이 컴퓨터에 저장되어 있어야 합니다. 여기서는 VLC 미디어 플레이어의 APK 파일을 설치한다고 가정하겠습니다.
아래 단계에 따라 기기에 앱을 설치하세요.
1. 먼저 APK 파일을 SDK Platform Tools 폴더로 이동합니다. 이렇게 하면 APK 파일 위치의 전체 경로를 일일이 입력하지 않아도 되어 편리합니다.
2. 다음으로 명령 프롬프트 또는 PowerShell 창을 열고 'adb install <앱이름.apk>' 형식의 명령어를 입력합니다. 여기서 앱이름은 APK 파일의 이름입니다. 이번 예시에서는 'VLC.apk'가 됩니다.
3. 설치가 완료되면 화면에 'Success' 메시지가 표시됩니다.
기타 유용한 ADB 명령어
이제 ADB 명령어로 APK를 설치하는 방법을 성공적으로 익히셨습니다. 하지만 앞서 언급했듯이 ADB는 다양한 작업을 수행할 수 있는 강력한 도구입니다. 올바른 코드와 문법만 알면 훨씬 더 많은 작업을 할 수 있습니다. 마지막으로 실험해 보며 재미있게 활용할 수 있는 주요 명령어 몇 가지를 소개합니다.
1. 'adb install -r <앱이름.apk>' – 기존에 설치된 앱을 재설치하거나 업데이트하는 명령어입니다. 예를 들어 이미 설치된 앱을 최신 APK 파일로 업데이트할 때 유용하며, 시스템 앱이 손상되었을 때 해당 앱의 APK 파일로 교체할 때도 활용됩니다.
2. 'adb install -s <앱이름.apk>' – 앱을 SD 카드에 설치하는 명령어입니다. 단, 앱이 SD 카드 설치를 지원하고 기기에서 SD 카드 설치를 허용하는 경우에만 사용할 수 있습니다.
3. 'adb uninstall <패키지명>' – 기기에서 앱을 삭제하는 명령어입니다. 단, 삭제 시에는 APK 파일명이 아니라 전체 패키지 이름을 입력해야 합니다. 예를 들어 인스타그램을 삭제하려면 'com.instagram.android'이라고 입력해야 합니다.
4. 'adb logcat' – 기기의 로그 파일을 확인할 수 있는 명령어입니다.
5. 'adb shell' – 안드로이드 기기에서 대화형 리눅스 명령줄 셸을 실행하는 명령어입니다.
6. 'adb push <파일경로>/sdcard/<폴더명>' – 컴퓨터에 있는 파일을 안드로이드 기기의 SD 카드로 전송하는 명령어입니다. '파일경로'는 컴퓨터에서 파일이 있는 경로를, '폴더명'은 안드로이드 기기에서 파일이 저장될 디렉터리를 의미합니다.
7. 'adb pull /sdcard/<파일명><저장경로>' – push 명령어의 반대 동작으로, 안드로이드 기기의 파일을 컴퓨터로 전송하는 명령어입니다. '파일명' 자리에 SD 카드에 있는 파일 이름을, '저장경로' 자리에 컴퓨터에 저장할 위치를 지정하면 됩니다.
8. 'adb reboot' – 기기를 재부팅하는 명령어입니다. reboot 뒤에 '-bootloader'를 추가하면 부트로더 모드로 부팅할 수 있으며, 일부 기기에서는 'reboot recovery'를 입력해 바로 복구(Recovery) 모드로 진입할 수도 있습니다.