একটি বিদ্যমান HIDL VHAL বাস্তবায়নকে AIDL VHAL-এ স্থানান্তর করতে, IVehicleHardware
ইন্টারফেস বাস্তবায়নের জন্য AIDL রেফারেন্স বাস্তবায়ন কাঠামো ব্যবহার করুন।
যদি বিদ্যমান HIDL বাস্তবায়নও অনুসরণ করে HIDL রেফারেন্স বাস্তবায়ন , বিক্রেতা VehicleHal
ক্লাস বাস্তবায়ন করেছে। IVehicleHardware
অনেকটা VehicleHal
এর মতই।
HIDL VHAL | AIDL VHAL |
---|---|
getAllPropertyConfigs() | VehicleHal. এর মতই |
getValues( | প্রতিটি অনুরোধের জন্য VehicleHal. কল করতে পারেন এবং কলব্যাক কল করতে পারেন। |
dump() | VehicleHal. এর মতই |
checkHealth() | VehicleHal. ফেরত দিতে পারে |
registerPropertyChangeCallback() | VehicleHal. সেট করার অনুরূপ |
এআইডিএল-এর প্রকারভেদ
HIDL VHAL থেকে AIDL VHAL-এ স্থানান্তর করার সময়, এই পার্থক্যগুলি বিবেচনা করুন।
- HIDL
types.hal
থেকে উৎপন্ন সকল প্রকারের জন্য একটি হেডার ফাইল (types.h
) তৈরি করে। AIDL প্রতিটি ধরনের জন্য একটি হেডার ফাইল তৈরি করে। উদাহরণস্বরূপ,VehiclePropValue.h
থেকেVehiclePropValue.aidl
।ফলস্বরূপ, আপনার প্রয়োজনীয় ধরণের জন্য আপনাকে অবশ্যই সমস্ত হেডার ফাইল অন্তর্ভুক্ত করতে হবে।
VehicleHalUtils
লাইব্রেরিতে একটি হেল্পার ফাইল,VehicleHalTypes.h
বেশিরভাগ সাধারণ প্রকার রয়েছে। -
types.hal
তে সংজ্ঞায়িত সমস্ত প্রকার এআইডিএল-এ একই রকম, ছাড়া :-
SubscribeFlags
সরানো হয়েছে কারণ এটি ব্যবহার করা হয়নি কারণonPropertySet
সরানো হয়েছে -
UserFlags
এখনUserInfo.aidl
এ সংজ্ঞায়িত করা হয়েছে এবং একটি enum এর পরিবর্তে একটি পতাকা হিসাবে সংজ্ঞায়িত করা উচিত। একটি ব্যবহারকারীর পতাকা ক্ষেত্র হল একটি পূর্ণসংখ্যা যাতে একাধিকUserInfo.USER_FLAG_XXX
বিট-বা একসাথে থাকে। -
VehiclePropValue
এRawValue
এর নাম পরিবর্তন করেRawPropValue
রাখা হয়েছে -
RawValue
এbytes
নাম পরিবর্তন করেbyteValues
করা হয়েছে
-
এর পরিবর্তে... | ব্যবহার করুন |
---|---|
hidl_ | std:: |
hidl_string | std::string |
android::sp | std::shared_ptr |
android::wp | std::weak_ptr |