शुरू करना

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

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

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

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

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 बिल्ड का इंडेक्स पाने के लिए, http://ci.android.com/ पर Android के लगातार इंटिग्रेशन की साइट पर जाएं.

  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

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

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

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

./bin/adb devices

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

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

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

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

Cuttlefish को बंद करना

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

HOME=$PWD ./bin/stop_cvd