開始使用

本頁介紹如何使用Cuttlefish啟動 AOSP 建置。

驗證 KVM 可用性

Cuttlefish 是虛擬設備,依賴主機上可用的虛擬化。

在主機上的終端機中,確保基於核心的虛擬機 (KVM) 的虛擬化可用:

grep -c -w "vmx\|svm" /proc/cpuinfo

該命令應傳回一個非零值。

在 ARM 機器上運作時,最直接的方法是檢查/dev/kvm

find /dev -name kvm

發射墨魚

  1. 在終端機視窗中,下載、建置並安裝主機 Debian 軟體包:

    sudo apt install -y git devscripts equivs config-package-dev debhelper-compat golang curl
    git clone https://github.com/google/android-cuttlefish
    cd android-cuttlefish
    for dir in base frontend; do
      pushd $dir
      # Install build dependencies
      sudo mk-build-deps -i
      dpkg-buildpackage -uc -us
      popd
    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規則。

  2. Cuttlefish 是 Android 開源平台 (AOSP) 的一部分。虛擬設備的建置可以在 Android 持續整合網站上找到。若要尋找所有 Android 版本的索引,請導覽至 Android 持續整合網站: http://ci.android.com/

  3. 輸入分支名稱。使用預設的aosp-main分支或使用通用系統映像 (GSI) 分支,例如aosp-android13-gsi

  4. 導航至aosp_cf_x86_64_phone建置目標並按一下userdebug以取得最新建置。

  5. 點擊userdebug下面的綠色框選擇此建置。將出現“詳細資訊”面板,其中包含特定於此版本的更多資訊。在此面板中,按一下工件可查看附加至此建置的所有工件的清單。

  6. 在工件面板中,下載 Cuttlefish 的工件。

    1. 按一下aosp_cf_x86_64_phone-img-xxxxxx.zip工件,其中包含裝置映像。在檔案名稱中,「xxxxxx」是該裝置的建置 ID。

    2. 在面板中向下捲動並下載cvd-host_package.tar.gz 。始終從與映像相同的版本下載主機包。

  7. 在本機系統上,建立一個容器資料夾並提取套件:

    mkdir cf
    cd cf
    tar -xvf /path/to/cvd-host_package.tar.gz
    unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip
    
  8. 發射墨魚:

    HOME=$PWD ./bin/launch_cvd --daemon
    

透過 adb 驗證 Cuttlefish 是否可見

與實體設備類似,Cuttlefish 透過Android 調試橋 (adb)可見。

在啟動 Cuttlefish 的相同資料夾中,執行以下命令以查看主機上透過 adb 可用的所有 Android 裝置的清單:

./bin/adb devices

在網路中查看虛擬設備並與之交互

預設情況下,Cuttlefish 使用--start_webrtc啟動,這會透過主機上的連接埠 8443 啟用 Web 視圖。

若要查看虛擬設備並與之交互,請在 Web 瀏覽器中導航至https://localhost:8443

有關更多信息,請參閱Cuttlefish:WebRTC 流

阻止墨魚

在用於啟動設備的相同目錄中停止虛擬設備:

HOME=$PWD ./bin/stop_cvd