शुरू करना

इस पेज पर, Cuttlefish का इस्तेमाल करके AOSP बिल्ड लॉन्च करने का तरीका बताया गया है.

केवीएम की उपलब्धता की पुष्टि करना

Cuttlefish एक वर्चुअल डिवाइस है. यह होस्ट मशीन पर वर्चुअलाइज़ेशन की सुविधा उपलब्ध होने पर ही काम करता है.

अपनी होस्ट मशीन पर मौजूद किसी टर्मिनल में, पक्का करें कि कर्नल-आधारित वर्चुअल मशीन (केवीएम) के साथ वर्चुअलाइज़ेशन की सुविधा उपलब्ध हो:

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

इस कमांड से, शून्य से अलग कोई वैल्यू मिलनी चाहिए.

ARM64 मशीन पर, /dev/kvm की जांच करना सबसे आसान तरीका है:

find /dev -name kvm

Cuttlefish लॉन्च करना

  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 Open-Source Platform (AOSP) का हिस्सा है. वर्चुअल डिवाइस के बिल्ड, Android Continuous Integration साइट पर मौजूद होते हैं. Android के सभी बिल्ड का इंडेक्स देखने के लिए, Android Continuous Integration साइट http://ci.android.com/ पर जाएं.

  3. कोई ब्रांच का नाम डालें. डिफ़ॉल्ट aosp-android-latest-release ब्रांच का इस्तेमाल करें या सामान्य सिस्टम इमेज (जीएसआई) ब्रांच का इस्तेमाल करें. जैसे, aosp-android13-gsi.

  4. aosp_cf_x86_64_only_phone बिल्ड टारगेट पर जाएं और सबसे नए बिल्ड के लिए, userdebug पर क्लिक करें.

  5. इस बिल्ड को चुनने के लिए, userdebug के नीचे मौजूद हरे रंग के बॉक्स पर क्लिक करें. जानकारी पैनल दिखेगा. इसमें इस बिल्ड के बारे में ज़्यादा जानकारी होगी. इस पैनल में, आर्टफ़ैक्ट पर क्लिक करके, इस बिल्ड से जुड़े सभी आर्टफ़ैक्ट की सूची देखें.

  6. आर्टफ़ैक्ट पैनल में, 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. Cuttlefish लॉन्च करें:

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

पुष्टि करें कि Cuttlefish, adb के ज़रिए दिख रहा है

फ़िज़िकल डिवाइस की तरह, Cuttlefish भी Android डीबग ब्रिज (adb) के ज़रिए दिखता है.

जिस फ़ोल्डर में आपने Cuttlefish लॉन्च किया है उसी में, यह कमांड चलाकर देखें कि आपकी होस्ट मशीन पर adb के ज़रिए Android के कौन-कौनसे डिवाइस उपलब्ध हैं:

./bin/adb devices

वेब पर वर्चुअल डिवाइस देखना और उससे इंटरैक्ट करना

डिफ़ॉल्ट रूप से, Cuttlefish --start_webrtc के साथ लॉन्च होता है. इससे होस्ट मशीन पर पोर्ट 8443 के ज़रिए वेबव्यू की सुविधा मिलती है.

अपने वर्चुअल डिवाइस देखने और उनसे इंटरैक्ट करने के लिए, वेब ब्राउज़र में https://localhost:8443 पर जाएं.

ज़्यादा जानकारी के लिए, Cuttlefish: WebRTC स्ट्रीमिंग देखें.

Cuttlefish को रोकना

वर्चुअल डिवाइस को उसी डायरेक्ट्री में रोकें जिसका इस्तेमाल आपने डिवाइस लॉन्च करने के लिए किया था:

HOME=$PWD ./bin/stop_cvd