SDV מאפשר עדכוני A/B למחיצה המותאמת אישית /oem_ab. אפשר להשתמש בספריית OEM ABUpdater כדי להפעיל עדכונים למחיצה המותאמת אישית /oem_ab ולבטל אותם, עם יכולות דומות לעדכוני A/B של מערכת Android.
ראו את קוד לדוגמה להטמעה של ספריית OEM AB Updater בכתובת system/software_defined_vehicle/samples/oem_partition_update_client.
במדריך הזה מוסבר איך להשתמש בספריית OEM AB Updater ולשלב אותה עם הטמעה משלכם של Updater Service. במדריך הזה אנחנו יוצאים מנקודת הנחה שאתם משתמשים ב-Cuttlefish כדי ליצור ולבדוק את השינויים.
מיקום הספרייה
ספריית OEM AB Updater נמצאת בספרייה system/software_defined_vehicle/platform/oem.
יצירת תמונות בהתאמה אישית
ספריית OEM AB Updater דורשת כמה תמונות בהתאמה אישית. התמונות האלה מוגדרות ב-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 נוצרות כשיוצרים את היעד. לדוגמה, הפקודה building sdv_core_cf יוצרת את תמונות המחיצות:
source build/envsetup.sh
lunch sdv_core_cf-trunk_staging-userdebug
m
ציון של מכשירי חסימה בהתאמה אישית
מוודאים שהיעד של Cuttlefish lunch מגדיר את 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 Updater בשירות חדש
כדי להשתמש בספרייה בשירות אחר:
- מייבאים את תיבת
sdv_oem_updater::OemUpdaterכמו שמוסבר במאמרsystem/software_defined_vehicle/samples/oem_partition_update_client/oem_partition_client.rs.
. Create a new.tepolicy similar to the SELinux policies defined indevice/google/sdv/sdv_core_cf/sepolicy/product/private/oem_partition_client.te`.