इस पेज पर, Cuttlefish का इस्तेमाल करके, AOSP बिल्ड लॉन्च करने का तरीका बताया गया है.
KVM की उपलब्धता की पुष्टि करना
Cuttlefish एक वर्चुअल डिवाइस है. यह होस्ट मशीन पर वर्चुअलाइज़ेशन की सुविधा उपलब्ध होने पर ही काम करता है.
अपनी होस्ट मशीन के टर्मिनल में, पक्का करें कि कर्नेल-आधारित वर्चुअल मशीन (केवीएम) के साथ वर्चुअलाइज़ेशन की सुविधा उपलब्ध हो:
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 Continuous Integration साइट पर मिलते हैं. Android की सभी बिल्ड की इंडेक्स फ़ाइल ढूंढने के लिए, Android Continuous Integration साइट पर जाएं. इसके लिए, http://ci.android.com/ पर जाएं.
ब्रांच का नाम डालें. डिफ़ॉल्ट
aosp-android-latest-release
ब्रांच का इस्तेमाल करें या सामान्य सिस्टम इमेज (जीएसआई) ब्रांच का इस्तेमाल करें. जैसे,aosp-android13-gsi
.aosp_cf_x86_64_only_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
पुष्टि करें कि Cuttlefish, adb के ज़रिए दिख रहा है
फ़िज़िकल डिवाइस की तरह ही, Cuttlefish को Android डीबग ब्रिज (adb) के ज़रिए देखा जा सकता है.
Cuttlefish को जिस फ़ोल्डर में लॉन्च किया गया था उसी फ़ोल्डर में, नीचे दिए गए निर्देश को चलाएं. इससे आपको अपनी होस्ट मशीन पर, adb के ज़रिए उपलब्ध सभी Android डिवाइसों की सूची दिखेगी:
./bin/adb devices
वेब पर वर्चुअल डिवाइस को देखना और उससे इंटरैक्ट करना
डिफ़ॉल्ट रूप से, Cuttlefish --start_webrtc
के साथ लॉन्च होता है. इससे होस्ट मशीन पर पोर्ट 8443 के ज़रिए वेबव्यू चालू हो जाता है.
अपने वर्चुअल डिवाइसों को देखने और उनसे इंटरैक्ट करने के लिए, अपने वेब ब्राउज़र में https://localhost:8443 पर जाएं.
ज़्यादा जानकारी के लिए, Cuttlefish: WebRTC स्ट्रीमिंग देखें.
कटलफ़िश को बंद करें
वर्चुअल डिवाइस को उसी डायरेक्ट्री में बंद करें जिसका इस्तेमाल आपने डिवाइस को लॉन्च करने के लिए किया था:
HOME=$PWD ./bin/stop_cvd