เริ่มเลย

หน้านี้จะอธิบายวิธีเปิดตัวบิลด์ AOSP โดยใช้ Cuttlefish

ยืนยันความพร้อมใช้งานของ KVM

หมึกกระดองเป็นอุปกรณ์เสมือนและอาศัยระบบเสมือนจริงที่มีอยู่ในเครื่องโฮสต์

ในเทอร์มินัลบนเครื่องโฮสต์ ให้ตรวจสอบว่าระบบเสมือนจริงด้วยเครื่องเสมือนที่ใช้เคอร์เนล (KVM) พร้อมใช้งาน

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

คำสั่งนี้ควรแสดงผลค่าที่ไม่ใช่ 0

เมื่อทำงานบนเครื่อง ARM64 วิธีโดยตรงที่สุดคือการตรวจหา /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
    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 เป็นส่วนหนึ่งของแพลตฟอร์มโอเพนซอร์ส Android (AOSP) บิลด์ของอุปกรณ์เสมือนมีอยู่ที่เว็บไซต์การผสานรวม Android Continuous หากต้องการค้นหาดัชนีของเวอร์ชัน Android ทั้งหมด ให้ไปที่เว็บไซต์การผสานรวม Android Continuous ที่ http://ci.android.com/

  3. ป้อนชื่อสาขา ใช้ Branch เริ่มต้นของ aosp-main หรือใช้Branch ของอิมเมจระบบทั่วไป (GSI) เช่น aosp-android13-gsi

  4. ไปที่เป้าหมายของบิลด์ aosp_cf_x86_64_phone แล้วคลิก userdebug เพื่อดูบิลด์ล่าสุด

  5. คลิกช่องสีเขียวด้านล่าง userdebug เพื่อเลือกบิลด์นี้ แผงรายละเอียดจะปรากฏขึ้นพร้อมข้อมูลเพิ่มเติมที่เฉพาะเจาะจงสำหรับบิลด์นี้ ในแผงนี้ ให้คลิกอาร์ติแฟกต์เพื่อดูรายการอาร์ติแฟกต์ทั้งหมดที่แนบกับบิลด์นี้

  6. ในแผงอาร์ติแฟกต์ ให้ดาวน์โหลดอาร์ติแฟกต์ของ Cuttlefish

    1. คลิกอาร์ติแฟกต์ aosp_cf_x86_64_phone-img-xxxxxx.zip สำหรับ x86_64 หรืออาร์ติแฟกต์ aosp_cf_arm64_only_phone-xxxxxx.zip สำหรับ ARM64 ซึ่งมีรูปภาพอุปกรณ์ ในชื่อไฟล์ "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. เปิด Cuttlefish:

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

ตรวจสอบว่ามองเห็นหมึกกระดองผ่าน adb

โดย Cuttlefish จะเหมือนกับอุปกรณ์จริงผ่าน Android Debug Bridge (adb)

ในโฟลเดอร์เดียวกับที่คุณเปิด Cuttlefish ให้เรียกใช้คำสั่งต่อไปนี้เพื่อดูรายการอุปกรณ์ Android ทั้งหมดที่มีผ่าน adb ในเครื่องโฮสต์ของคุณ

./bin/adb devices

ดูและโต้ตอบกับอุปกรณ์เสมือนในเว็บ

โดยค่าเริ่มต้น Cuttlefish จะเปิดตัวด้วย --start_webrtc ซึ่งจะเปิดใช้ WebView ผ่านพอร์ต 8443 บนเครื่องโฮสต์

หากต้องการดูและโต้ตอบกับอุปกรณ์เสมือน ให้ไปที่ https://localhost:8443 ในเว็บเบราว์เซอร์

สำหรับข้อมูลเพิ่มเติม โปรดดูที่ Cuttlefish: การสตรีมด้วย WebRTC

หยุดหมึกกระดอง

หยุดอุปกรณ์เสมือนภายในไดเรกทอรีเดียวกันกับที่คุณใช้ในการเปิดอุปกรณ์ โดยทำดังนี้

HOME=$PWD ./bin/stop_cvd