SDV কাস্টম /oem_ab পার্টিশনের জন্য A/B আপডেট সক্ষম করে। কাস্টম /oem_ab পার্টিশনের জন্য আপডেট শুরু করতে এবং রোল ব্যাক করতে OEM AB Updater লাইব্রেরি ব্যবহার করুন, যার ক্ষমতা অ্যান্ড্রয়েড সিস্টেমের A/B আপডেটের মতোই।
OEM AB আপডেটার লাইব্রেরি বাস্তবায়নের জন্য নমুনা কোড system/software_defined_vehicle/samples/oem_partition_update_client -এ দেখুন।
এই নির্দেশিকায় বর্ণনা করা হয়েছে কীভাবে OEM AB Updater লাইব্রেরি ব্যবহার করতে হয় এবং এটিকে আপনার নিজস্ব Updater Service ইমপ্লিমেন্টেশনের সাথে একীভূত করতে হয়। এই নির্দেশিকাটি ধরে নেয় যে আপনি আপনার পরিবর্তনগুলি বিল্ড এবং পরীক্ষা করার জন্য 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
কাস্টম ব্লক ডিভাইস নির্দিষ্ট করুন
যাচাই করুন যে আপনার Cuttlefish lunch টার্গেটটি ব্লক ডিভাইসগুলোকে সংশ্লিষ্ট bootconfig প্রপার্টির সাথে ম্যাপ করার জন্য BOARD_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 আপডেটার লাইব্রেরি ব্যবহার করুন
অন্য কোনো পরিষেবাতে লাইব্রেরিটি ব্যবহার করতে:
-
system/software_defined_vehicle/samples/oem_partition_update_client/oem_partition_client.rsএ দেখানো পদ্ধতি অনুযায়ীsdv_oem_updater::OemUpdaterক্রেটটি ইম্পোর্ট করুন।
`device/google/sdv/sdv_core_cf/sepolicy/product/private/oem_partition_client.te`- policy similar to the SELinux policies defined in . Create a new