इस पेज पर, Cuttlefish का इस्तेमाल करके AOSP बिल्ड लॉन्च करने का तरीका बताया गया है.
पुष्टि करना कि केवीएम की सुविधा उपलब्ध है या नहीं
कटलफ़िश एक वर्चुअल डिवाइस है और यह इस बात पर निर्भर करता है कि होस्ट मशीन पर वर्चुअलाइज़ेशन की सुविधा उपलब्ध है या नहीं.
अपनी होस्ट मशीन के टर्मिनल में, पक्का करें कि कर्नेल-आधारित वर्चुअल मशीन (KVM) की मदद से वर्चुअलाइज़ेशन की सुविधा उपलब्ध हो:
grep -c -w "vmx\|svm" /proc/cpuinfo
इस निर्देश से ऐसी वैल्यू मिलनी चाहिए जो शून्य नहीं हो.
ARM64 मशीन पर चलाते समय, सबसे सीधा तरीका यह है कि आप /dev/kvm
की जांच करें:
find /dev -name kvm
Cuttlefish लॉन्च करना
टर्मिनल विंडो में, होस्ट के 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
नियम लागू होते हैं.Cuttlefish, Android Open-Source Platform (AOSP) का हिस्सा है. वर्चुअल डिवाइस के बिल्ड, Android लगातार इंटिग्रेशन साइट पर पाए जाते हैं. सभी Android बिल्ड का इंडेक्स देखने के लिए, http://ci.android.com/ पर जाकर Android लगातार इंटिग्रेशन साइट पर जाएं.
शाखा का नाम डालें. डिफ़ॉल्ट
aosp-main
शाखा का इस्तेमाल करें याaosp-android13-gsi
जैसी सामान्य सिस्टम इमेज (जीएसआई) शाखा का इस्तेमाल करें.aosp_cf_x86_64_phone बिल्ड टारगेट पर जाएं और नया बिल्ड देखने के लिए userdebug पर क्लिक करें.
इस बिल्ड को चुनने के लिए, userdebug के नीचे मौजूद हरे बॉक्स पर क्लिक करें. इस बिल्ड के लिए ज़्यादा जानकारी वाला ब्यौरा पैनल दिखेगा. इस पैनल में, आर्टफ़ैक्ट पर क्लिक करके, इस बिल्ड से जुड़े सभी आर्टफ़ैक्ट की सूची देखें.
आर्टफ़ैक्ट पैनल में, Cuttlefish के लिए आर्टफ़ैक्ट डाउनलोड करें.
x86_64 के लिए
aosp_cf_x86_64_phone-img-xxxxxx.zip
आर्टफ़ैक्ट या ARM64 के लिएaosp_cf_arm64_only_phone-xxxxxx.zip
आर्टफ़ैक्ट पर क्लिक करें, जिसमें डिवाइस की इमेज होती हैं. फ़ाइल नाम में, "xxxxxx" इस डिवाइस का बिल्ड आईडी है.पैनल में नीचे स्क्रोल करें और
cvd-host_package.tar.gz
डाउनलोड करें. हमेशा अपनी इमेज के उसी बिल्ड से होस्ट पैकेज डाउनलोड करें.
अपने लोकल सिस्टम पर, एक कंटेनर फ़ोल्डर बनाएं और पैकेज एक्सट्रैक्ट करें:
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
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
Cuttlefish लॉन्च करें:
HOME=$PWD ./bin/launch_cvd --daemon
पुष्टि करें कि adb से कटलफ़िश दिख रही है
किसी फ़िज़िकल डिवाइस की तरह ही, कटलफ़िश को Android डीबग ब्रिज (adb) से भी देखा जा सकता है.
Cuttlefish को लॉन्च करने वाले फ़ोल्डर में, नीचे दिया गया कमांड चलाएं. इससे आपको अपनी होस्ट मशीन पर adb के ज़रिए उपलब्ध सभी Android डिवाइसों की सूची दिखेगी:
./bin/adb devices
वेब पर वर्चुअल डिवाइस को देखना और उससे इंटरैक्ट करना
डिफ़ॉल्ट रूप से, कटलफ़िश को --start_webrtc
के साथ लॉन्च किया जाता है. इसकी मदद से, होस्ट मशीन पर
पोर्ट 8443 के ज़रिए वेबव्यू की सुविधा चालू हो जाती है.
अपने वर्चुअल डिवाइसों को देखने और उनसे इंटरैक्ट करने के लिए, अपने वेब ब्राउज़र में https://localhost:8443 पर जाएं.
ज़्यादा जानकारी के लिए, Cuttlefish: WebRTC स्ट्रीमिंग देखें.
कटलफ़िश को रोकें
वर्चुअल डिवाइस को उसी डायरेक्ट्री में रोकें जिसका इस्तेमाल आपने डिवाइस को लॉन्च करने के लिए किया था:
HOME=$PWD ./bin/stop_cvd