توضح هذه الصفحة كيفية تشغيل بناء AOSP باستخدام Cuttlefish .
تحقق من توفر KVM
Cuttlefish هو جهاز افتراضي ويعتمد على توفر المحاكاة الافتراضية على الجهاز المضيف.
في الوحدة الطرفية على جهازك المضيف، تأكد من توفر المحاكاة الافتراضية باستخدام جهاز ظاهري قائم على Kernel (KVM):
grep -c -w "vmx\|svm" /proc/cpuinfo
يجب أن يقوم هذا الأمر بإرجاع قيمة غير صفرية.
عند التشغيل على جهاز ARM، الطريقة الأكثر مباشرة هي التحقق من /dev/kvm
:
find /dev -name kvm
إطلاق الحبار
في النافذة الطرفية، قم بتنزيل حزم دبيان المضيفة وإنشائها وتثبيتها:
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
for dir in base frontend; do pushd $dir # Install build dependencies sudo mk-build-deps -i dpkg-buildpackage -uc -us popd done
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
تؤدي إعادة التشغيل إلى تثبيت وحدات kernel إضافية وتطبيق قواعد
udev
.يعد Cuttlefish جزءًا من نظام Android مفتوح المصدر (AOSP). يمكن العثور على إصدارات الجهاز الظاهري في موقع Android Continious Integration. للعثور على فهرس بجميع إصدارات Android، انتقل إلى موقع Android Continious Integration على http://ci.android.com/ .
أدخل اسم الفرع. استخدم فرع
aosp-main
الافتراضي أو استخدم فرع صورة نظام عام (GSI) مثلaosp-android13-gsi
.انتقل إلى هدف البناء aosp_cf_x86_64_phone وانقر فوق userdebug للحصول على أحدث إصدار.
انقر فوق المربع الأخضر الموجود أسفل userdebug لتحديد هذا الإصدار. تظهر لوحة التفاصيل مع مزيد من المعلومات الخاصة بهذا الإصدار. في هذه اللوحة، انقر فوق Artifacts لرؤية قائمة بجميع القطع الأثرية المرتبطة بهذا الإصدار.
في لوحة Artifacts، قم بتنزيل العناصر الخاصة بـ Cuttlefish.
انقر فوق القطعة الأثرية
aosp_cf_x86_64_phone-img-xxxxxx.zip
، التي تحتوي على صور الجهاز. في اسم الملف، "xxxxxx" هو معرف البنية لهذا الجهاز.قم بالتمرير لأسفل في اللوحة وقم بتنزيل
cvd-host_package.tar.gz
. قم دائمًا بتنزيل الحزمة المضيفة من نفس إصدار صورك.
على نظامك المحلي، قم بإنشاء مجلد حاوية واستخرج الحزم:
mkdir cf
cd cf
tar -xvf /path/to/cvd-host_package.tar.gz
unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip
إطلاق الحبار:
HOME=$PWD ./bin/launch_cvd --daemon
تحقق من أن Cuttlefish مرئي من خلال adb
كما هو الحال مع الأجهزة المادية، يمكن رؤية Cuttlefish من خلال Android Debug Bridge (adb) .
في نفس المجلد الذي قمت بتشغيل Cuttlefish فيه، قم بتشغيل الأمر التالي لرؤية قائمة بجميع أجهزة Android المتاحة من خلال adb على جهازك المضيف:
./bin/adb devices
عرض الجهاز الظاهري في الويب والتفاعل معه
افتراضيًا، يتم تشغيل Cuttlefish باستخدام --start_webrtc
، والذي يتيح عرض الويب من خلال المنفذ 8443 على الجهاز المضيف.
لعرض أجهزتك الافتراضية والتفاعل معها، انتقل إلى https://localhost:8443 في متصفح الويب الخاص بك.
لمزيد من المعلومات، راجع Cuttlefish: WebRTC Streaming .
وقف الحبار
أوقف الجهاز الظاهري داخل نفس الدليل الذي استخدمته لتشغيل الجهاز:
HOME=$PWD ./bin/stop_cvd