شروع به کار

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

بررسی در دسترس بودن KVM

Cuttlefish یک دستگاه مجازی است و به مجازی‌سازی موجود در دستگاه میزبان وابسته است.

در ترمینال دستگاه میزبان خود، مطمئن شوید که مجازی‌سازی با ماشین مجازی مبتنی بر هسته (KVM) در دسترس است:

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

این دستور باید مقداری غیر از صفر برگرداند.

هنگام اجرا روی یک دستگاه ARM64، مستقیم‌ترین راه بررسی وجود /dev/kvm است:

find /dev -name kvm

راه اندازی ده پا

  1. در یک پنجره ترمینال، بسته‌های میزبان دبیان را دانلود، ساخت و نصب کنید:

    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
    tools/buildutils/build_packages.sh
    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 Continuous Integration در آدرس http://ci.android.com/ مراجعه کنید.

  3. نام شاخه را وارد کنید. از شاخه پیش‌فرض aosp-android-latest-release یا از یک شاخه عمومی system image (GSI) مانند aosp-android13-gsi استفاده کنید.

  4. به مسیر ساخت aosp_cf_x86_64_only_phone بروید و برای مشاهده آخرین نسخه، روی userdebug کلیک کنید.

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

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

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

    2. در پنل به پایین اسکرول کنید و cvd-host_package.tar.gz را دانلود کنید. همیشه بسته میزبان را از همان نسخه‌ای که ایمیج‌هایتان را دانلود می‌کنید، دانلود کنید.

  7. روی سیستم محلی خود، یک پوشه کانتینر ایجاد کنید و بسته‌ها را استخراج کنید:

    1. معماری x86_64:

      mkdir cf
      cd cf
      tar -xvf /path/to/cvd-host_package.tar.gz
      unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip

    2. معماری ARM64:

      mkdir cf
      cd cf
      tar -xvf /path/to/cvd-host_package.tar.gz
      unzip /path/to/aosp_cf_arm64_only_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 اجرا می‌شود که امکان مشاهده وب را از طریق پورت ۸۴۴۳ در دستگاه میزبان فراهم می‌کند.

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

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

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

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

HOME=$PWD ./bin/stop_cvd