티스토리 뷰
개요
- Windows 11을 호스트 머신으로 하는 WSL 2 환경에서 안드로이드 앱 개발 환경을 구성하고, 안드로이드 기기를 연결하는 방법을 정리했다.
WSL 2 안드로이드 개발 필수 준비물
- WSL 2에서 안드로이드 앱 개발을 하려면 호스트가 되는 Windows 11에는
USBIPD
, WSL 2에는adb
,Android Studio
를 설치해야 한다.아래와 같이 차례대로 실행한다.
# Android Studio 설치
$ sudo snap install android-studio --classic
# Android Studio 바로가기 생성
$ nano ~/.bash_alises
alias studio="/snap/bin/android-studio > /dev/null 2>&1 &"
alias studio.="/snap/bin/android-studio . > /dev/null 2>&1 &"
# Android Studio 첫 실행 후 안내에 따라 Andorid SDK Command-line Tools 설치
Settings > Languange & Frameworks > Android SDK > SDK Tools > Andorid SDK Command-line Tools
# Windows 11에서 Android ADB Interface 드라이버 설치
https://developer.android.com/studio/run/win-usb
https://developer.samsung.com/android-usb-driver
# Windows 11에서 USBIPD 설치
$ winget install usbipd
# WSL 2에서 adb 설치
$ sudo apt-get install adb -y
$ adb kill-server
$ adb start-server
# adb 실행 확인
$ adb devices
List of devices attached
WSL 2에서 유선 연결된 안드로이드 기기 인식
- WSL 2는 호스트 PC에 연결된 안드로이드 기기를 인식하지 못한다.
USBIPD
를 이용하면 USB 트래픽을 WSL 2로 포워딩하여 기기를 인식할 수 있다. 아래와 같이 차례대로 실행한다.
# 안드로이드 기기에서 개발자 모드 활성화 후 케이블로 PC와 연결
설정 > 휴대전화 정보 > 소프트웨어 정보 > [빌드번호] 7번 연속 탭
설정 > 휴대전화 정보 > 개발자 옵션 > [USB 디버깅] 켜기 > [USB 디버깅 권한 승인 취소]
# Windows 11에서 연결된 안드로이드 기기 확인
$ usbipd list
Connected:
BUSID VID:PID DEVICE STATE
1-1 1111:1111 S24, SAMSUNG Mobile USB Modem, SAMSUNG Mobile US... Not shared
# Windows 11에서 연결된 안드로이드 기기를 WSL 2에 포워딩
# 포워딩 시점에 안드로이드 기기에 권한 승인 창에 뜨면 확인
$ usbipd bind -b 1-1
$ usbipd attach --wsl=Ubuntu --busid=1-1
# WSL 2에서 연결된 안드로이드 기기 확인
$ adb devices
List of devices attached
R3CX308V3AJ device
- WSL 2에서
adb devices
명령으로 연결된 안드로이드 기기가 조회되면 인식 성공이다.
WSL 2에 Flutter 설치
Flutter
개발 환경은 아래와 같이 설치할 수 있다. 앞서adb devices
명령어로 확인된 연결 기기를flutter devices
명령에서도 확인할 수 있다.
# Flutter 설치
$ sudo snap install flutter --classic
$ flutter sdk-path
$ flutter doctor --android-licenses
# 정상 설치 여부 확인
$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.19.4, on Ubuntu 22.04.4 LTS 5.15.146.1-microsoft-standard-WSL2, locale C.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Android Studio (version 2023.2)
[✓] Connected device (3 available)
[✓] Network resources
• No issues found!
# Flutter 연결 기기 확인
$ flutter devices
Found 3 connected devices:
SM S921N (mobile) • 172.10.5.39:5555 • android-arm64 • Android 14 (API 34)
Linux (desktop) • linux • linux-x64 • Ubuntu 22.04.4 LTS 5.15.146.1-microsoft-standard-WSL2
Chrome (web) • chrome • web-javascript • Google Chrome 123.0.6312.58
참고 글
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- java
- Spring MVC 3
- 평속
- 로드 바이크
- 구동계
- Kendo UI Web Grid
- node.js
- Kendo UI
- 태그를 입력해 주세요.
- DynamoDB
- 자전거
- maven
- Eclipse
- chrome
- Spring Boot
- 알뜰폰
- Tomcat
- jsp
- graylog
- jstl
- JavaScript
- kotlin
- JHipster
- CentOS
- MySQL
- bootstrap
- 로드바이크
- spring
- Docker
- jpa
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함