이 페이지에서는 Cuttlefish 를 사용하여 AOSP 빌드를 시작하는 방법을 설명합니다.
KVM 가용성 확인
Cuttlefish는 가상 장치이며 호스트 시스템에서 사용 가능한 가상화에 따라 달라집니다.
호스트 머신의 터미널에서 커널 기반 가상 머신(KVM)을 사용한 가상화를 사용할 수 있는지 확인합니다.
grep -c -w "vmx\|svm" /proc/cpuinfo
이 명령은 0이 아닌 값을 반환해야 합니다.
ARM 머신에서 실행할 때 가장 직접적인 방법은 /dev/kvm
을 확인하는 것입니다.
find /dev -name kvm
오징어 발사
터미널 창에서 호스트 Debian 패키지를 다운로드, 빌드 및 설치합니다.
sudo apt install -y git devscripts config-package-dev debhelper-compat golang curl
git clone https://github.com/google/android-cuttlefish
cd android-cuttlefish
for dir in base frontend; do cd $dir debuild -i -us -uc -b -d cd .. done
sudo dpkg -i ./cuttlefish-base_*_*64.deb || sudo apt-get install -f
sudo dpkg -i ./cuttlefish-user_*_*64.deb || sudo apt-get install -f
sudo usermod -aG kvm,cvdnetwork,render $USER
sudo reboot
재부팅은 추가 커널 모듈 설치를 트리거하고
udev
규칙을 적용합니다.Cuttlefish는 Android 오픈 소스 플랫폼(AOSP)의 일부입니다. 가상 장치의 빌드는 Android 지속적 통합 사이트에서 찾을 수 있습니다. 모든 Android 빌드의 색인을 찾으려면 http://ci.android.com/ 의 Android 지속적 통합 사이트로 이동하세요.
지점 이름을 입력합니다. 기본
aosp-master
브랜치를 사용하거나aosp-android13-gsi
와 같은 일반 시스템 이미지(GSI) 브랜치 를 사용하세요.aosp_cf_x86_64_phone 빌드 대상으로 이동하고 최신 빌드에 대한 userdebug 를 클릭하십시오.
이 빌드를 선택하려면 userdebug 아래의 녹색 상자를 클릭하십시오. 이 빌드에 대한 자세한 정보가 포함된 세부 정보 패널이 나타납니다. 이 패널에서 Artifacts 를 클릭하면 이 빌드에 연결된 모든 아티팩트 목록을 볼 수 있습니다.
Artifacts 패널에서 Cuttlefish용 아티팩트를 다운로드합니다.
기기 이미지가 포함된
aosp_cf_x86_64_phone-img-xxxxxx.zip
아티팩트를 클릭합니다. 파일 이름에서 "xxxxxx"는 이 장치의 빌드 ID입니다.패널에서 아래로 스크롤하여
cvd-host_package.tar.gz
를 다운로드합니다. 항상 이미지와 동일한 빌드에서 호스트 패키지를 다운로드하십시오.
로컬 시스템에서 컨테이너 폴더를 만들고 패키지를 추출합니다.
mkdir cf
cd cf
tar -xvf /path/to/cvd-host_package.tar.gz
unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip
오징어 발사:
HOME=$PWD ./bin/launch_cvd --daemon
오징어가 adb를 통해 보이는지 확인
물리적 기기와 유사하게 Cuttlefish는 Android 디버그 브리지(adb) 를 통해 표시됩니다.
Cuttlefish를 시작한 동일한 폴더에서 다음 명령을 실행하여 호스트 시스템에서 adb를 통해 사용 가능한 모든 Android 장치 목록을 확인합니다.
./bin/adb devices
웹에서 가상 장치 보기 및 상호 작용
기본적으로 Cuttlefish는 호스트 시스템의 포트 8443을 통해 웹 보기를 활성화하는 --start_webrtc
로 시작됩니다.
가상 장치를 보고 상호 작용하려면 웹 브라우저에서 https://localhost:8443 으로 이동합니다.
자세한 내용은 Cuttlefish: WebRTC 스트리밍 을 참조하십시오.
오징어 중지
장치를 시작하는 데 사용한 것과 동일한 디렉터리 내에서 가상 장치를 중지합니다.
HOME=$PWD ./bin/stop_cvd