2018. 9. 16. 17:58
728x90
우분투에서 안드로이드 앱을 개발하기 위해서는 윈도우나 맥보다는 조금 더 까다로운 과정이 필요합니다.
기본적으로 디바이스를 연결하려면 권한이 없다는 에러를 만나게 될 가능성이 매우 높기 때문입니다.
연결된 device 확인
brown@brown-ubuntu:~/android-studio/bin$ adb devices
List of devices attached
00cbe1ec95dxxxxx no permissions
no permissions 에러가 발생
brown@brown-ubuntu:~/android-studio/bin$ sudo adb kill-server
brown@brown-ubuntu:~/android-studio/bin$ sudo adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
brown@brown-ubuntu:~/android-studio/bin$ adb devices
List of devices attached
00cbe1ec95dbad83 unauthorized
디바이스로 돌아가보면 USB 디버깅 권한을 확인하는 창이 뜨게 됩니다.
디버깅 권한을 부여해야만 adb나 android studio에서 접근이 가능해집니다.
USB 디버깅 권한 허용
권한을 부여하고 다시 adb devices 명령을 수행하면 아래처럼 제대로 목록이 나옵니다.
brown@brown-ubuntu:~/android-studio/bin$ adb devices
List of devices attached
00cbe1ec95dbad83 device
Android Studio에서 APK 설치가 안된다면?
$ adb push /home/brown/AndroidStudioProjects/MyApplication/app/build/outputs/apk/debug/app-debug.apk /data/local/tmp/com.example.brown.myapplication
com.android.ddmlib.AdbCommandRejectedException: insufficient permissions for device: verify udev rules.
See [http://developer.android.com/tools/device.html] for more information.
Error while Installing APK
위와 같이 insufficient permissions for device: verify udev rules 에러가 나타난다면 udev 설정을 해주어야 합니다.
Nexus 5X의 udev 설정
/etc/udev/rules.d/51-android.rules 파일을 수정(혹은 생성)해야 합니다. (관리자 권한이 필요함)
brown@brown-ubuntu:~/android-studio/bin$ sudo vi /etc/udev/rules.d/51-android.rules
아래 내용을 기록하고 저장합니다.
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
여기서 중요한건 ATTR{idVendor} 값인데, 실제 디바이스 제조사의 ID를 입력해야 합니다.
18d1은 google의 ID이며 주의할 점은 Nexus 제품의 경우 LG(5X), 화웨이(6P)가 아니란거죠.
자세한 목록은 개발자 페이지에서 제공하고 있습니다.
회사 | USB 제공업체 ID |
---|---|
Acer | 0502 |
ASUS | 0b05 |
Dell | 413c |
Foxconn | 0489 |
Fujitsu | 04c5 |
FujitsuToshiba | 04c5 |
Garmin-Asus | 091e |
18d1 | |
Haier | 201E |
Hisense | 109b |
HP | 03f0 |
HTC | 0bb4 |
Huawei | 12d1 |
Intel | 8087 |
K-Touch | 24e3 |
KT Tech | 2116 |
Kyocera | 0482 |
Lenovo | 17ef |
LG | 1004 |
Motorola | 22b8 |
MTK | 0e8d |
NEC | 0409 |
Nook | 2080 |
Nvidia | 0955 |
OTGV | 2257 |
Pantech | 10a9 |
Pegatron | 1d4d |
Philips | 0471 |
PMC-Sierra | 04da |
Qualcomm | 05c6 |
SK Telesys | 1f53 |
Samsung | 04e8 |
Sharp | 04dd |
Sony | 054c |
Sony Ericsson | 0fce |
Sony Mobile Communications | 0fce |
Teleepoch | 2340 |
Toshiba | 0930 |
ZTE | 19d2 |
끝.
728x90