SDV بهروزرسانیهای A/B را برای پارتیشن سفارشی /oem_ab فعال میکند. از کتابخانه OEM AB Updater برای راهاندازی و بازگرداندن بهروزرسانیها برای پارتیشن سفارشی /oem_ab ، با قابلیتهای مشابه بهروزرسانیهای A/B سیستم اندروید ، استفاده کنید.
برای مشاهدهی نمونه کد پیادهسازی کتابخانهی بهروزرسانی OEM AB به system/software_defined_vehicle/samples/oem_partition_update_client مراجعه کنید.
این راهنما نحوه استفاده از کتابخانه بهروزرسانی OEM AB و ادغام آن با پیادهسازی سرویس بهروزرسانی خودتان را شرح میدهد. این راهنما فرض میکند که شما از Cuttlefish برای ساخت و آزمایش تغییرات خود استفاده میکنید.
محل کتابخانه
کتابخانهی بهروزرسانی OEM AB در دایرکتوری system/software_defined_vehicle/platform/oem قرار دارد.
ساخت تصاویر سفارشی مورد نیاز
کتابخانهی بهروزرسانی OEM AB به چندین تصویر سفارشی نیاز دارد. این تصاویر در device/google/sdv/sdv_core_base/oem_ab/oem_ab.mk و device/google/sdv/sdv_core_base/oem_ab/oem_ab_metadata.mk تعریف شدهاند.
تصاویر سفارشی مورد نیاز که در oem_ab.mk و oem_ab_metadata.mk تعریف شدهاند، هنگام ساخت هدف ایجاد میشوند. برای مثال، ساخت sdv_core_cf تصاویر پارتیشن را ایجاد میکند:
source build/envsetup.sh
lunch sdv_core_cf-aosp_current-userdebug
m
دستگاههای بلوک سفارشی را مشخص کنید
تأیید کنید که هدف lunch Cuttlefish شما، BOARD_BOOTCONFIG را برای نگاشت دستگاههای بلوک به ویژگی bootconfig مربوطه تنظیم میکند. برای مثال، به device/google/sdv/sdv_core_cf/BoardConfig.mk مراجعه کنید.
BOARD_BOOTCONFIG += \
androidboot.sdv.oem_slot_a_device=/dev/block/by-name/custom \
androidboot.sdv.oem_slot_b_device=/dev/block/by-name/custom_1
شروع یک ماشین مجازی جدید
پس از تأیید نگاشت دستگاههای بلوک، یک ماشین مجازی جدید با سه تصویر سفارشی ایجاد کنید:
cvd create --custom_partition_path="$OUT/oem_ab.img;$OUT/oem_ab.img;$OUT/oem_ab_metadata.img"
استفاده از کتابخانهی بهروزرسانی OEM AB در یک سرویس جدید
برای استفاده از کتابخانه در سرویس دیگری:
- فایل
sdv_oem_updater::OemUpdaterرا همانطور که درsystem/software_defined_vehicle/samples/oem_partition_update_client/oem_partition_client.rsنشان داده شده است، وارد کنید.
. Create a new policy similar to the SELinux policies defined in device/google/sdv/sdv_core_cf/sepolicy/product/private/oem_partition_client.te` ایجاد کنید.