توضّح هذه الصفحة كيفية إنشاء جهاز Cuttlefish مختلط (CHD).
جهاز CHD هو جهاز Cuttlefish افتراضي مختلط، ويشغّل صورة نظام لجهاز فعلي بدلاً من صورة نظام Cuttlefish على طبقات HAL الخاصة بالجهاز. ويوفّر ذلك المزايا التالية:
مرحلة التطوير والاختبار المبكّرة: تتيح أجهزة CHD إمكانية تطوير واختبار برامج الأنظمة من الجيل التالي في مرحلة مبكّرة قبل توفّر الأجهزة المادية.
قابلية التوسّع: تسهّل البيئات السحابية الخاصة بالتطوير توسيع نطاق التطوير واختبار السعة.
إنشاء صورة CHD
لإنشاء صورة CHD، اتّبِع الخطوات التالية:
أنشئ الملفات المستهدَفة الخاصة بهدف المورّد والجهاز الفعلي باستخدام
make dist. أنشئ ملفات استهداف المورّدين باستخدام أحد الخيارَين التاليَين:- جهاز Cuttlefish كامل حالي
- هدف Cuttlefish ينشئ ملفات مورّد Cuttlefish فقط. لمزيد من المعلومات، يُرجى الاطّلاع على إنشاء هدف مورّد Cuttlefish.
اجمع ملفَي الاستهداف في ملف استهداف CHD واحد، وأنشئ صور CHD من ملف استهداف CHD من خلال تشغيل النص البرمجي
build_cf_hybrid_device.py. يجمع هذا النص البرمجي بين ملفَّي الاستهداف في ملف استهداف CHD باستخدامmerge_target_files.pyوينشئ صور CHD من ملف استهداف CHD باستخدامimg_from_target_files.python3 tools/treble/cuttlefish/build_cf_hybrid_device.py \ --framework_target_files_zip <physical_device_target_files.zip> \ --vendor_target_files_zip <cuttlefish_device_target_files.zip> \ --otatools_zip <cuttlefish_otatools.zip> \ --target chd \ --output_dir <output_directory>
إنشاء هدف مورّد Cuttlefish
لإنشاء هدف خاص بالمورّد فقط في Cuttlefish، اتّبِع الخطوات التالية:
يمكنك استخدام aosp_cf_vendor.mk لتحديد هدف aosp_cf_arm64_phone_vendor، والذي يمكنك استخدامه كملف استهداف المورّد لصورة CHD.
استخدِم هدف Cuttlefish الذي ينشئ عناصر كاملة.
$(call inherit-product, device/google/cuttlefish/vsoc_arm64/phone/aosp_cf.mk)حدِّد اسم الهدف.
PRODUCT_NAME := aosp_cf_arm64_phone_vendorإيقاف عمليات الإنشاء غير الضرورية من العناصر الكاملة
PRODUCT_BUILD_SYSTEM_IMAGE := false PRODUCT_BUILD_SYSTEM_OTHER_IMAGE := false PRODUCT_BUILD_PRODUCT_IMAGE := false PRODUCT_BUILD_SYSTEM_EXT_IMAGE := false PRODUCT_BUILD_SUPER_PARTITION := false TARGET_SKIP_OTA_PACKAGE := true