شروع کنید

این صفحه نحوه راه اندازی یک ساخت AOSP را با استفاده از Cuttlefish شرح می دهد.

در دسترس بودن 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 بخشی از پلتفرم منبع باز اندروید (AOSP) است. ساخت‌های دستگاه مجازی در سایت Android Continuous Integration یافت می‌شوند. برای یافتن فهرستی از تمام ساخت‌های اندروید، به سایت ادغام پیوسته Android در http://ci.android.com/ بروید.

  3. یک نام شعبه وارد کنید. از شاخه پیش‌فرض aosp-main یا از شاخه تصویر سیستم عمومی (GSI) مانند aosp-android13-gsi استفاده کنید.

  4. به هدف ساخت aosp_cf_x86_64_phone بروید و برای آخرین بیلد روی userdebug کلیک کنید.

  5. برای انتخاب این ساخت، روی کادر سبز رنگ زیر userdebug کلیک کنید. یک پانل جزئیات با اطلاعات بیشتر مربوط به این ساخت ظاهر می شود. در این پنل روی Artifacts کلیک کنید تا لیستی از تمام مصنوعات پیوست شده به این بیلد را مشاهده کنید.

  6. در پنل Artifacts، مصنوعات را برای Cuttlefish دانلود کنید.

    1. روی aosp_cf_x86_64_phone-img-xxxxxx.zip که حاوی تصاویر دستگاه است، کلیک کنید. در نام فایل، "xxxxxx" شناسه ساخت این دستگاه است.

    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
    

بررسی کنید که Cuttlefish از طریق adb قابل مشاهده است

شبیه به یک دستگاه فیزیکی، Cuttlefish از طریق Android Debug Bridge (adb) قابل مشاهده است.

در همان پوشه ای که Cuttlefish را راه اندازی کردید، دستور زیر را اجرا کنید تا لیستی از تمام دستگاه های اندرویدی موجود از طریق adb در دستگاه میزبان خود را مشاهده کنید:

./bin/adb devices

مشاهده و تعامل با دستگاه مجازی در وب

به‌طور پیش‌فرض، Cuttlefish با --start_webrtc راه‌اندازی می‌شود، که نمای وب را از طریق پورت 8443 در دستگاه میزبان فعال می‌کند.

برای مشاهده و تعامل با دستگاه های مجازی خود، به https://localhost:8443 در مرورگر وب خود بروید.

برای اطلاعات بیشتر، به Cuttlefish: WebRTC Streaming مراجعه کنید.

دست ماهی را متوقف کنید

دستگاه مجازی را در همان فهرستی که برای راه‌اندازی دستگاه استفاده کردید، متوقف کنید:

HOME=$PWD ./bin/stop_cvd