تتيح هذه الميزة للشركاء اختيار كيفية مزامنة الوقت، سواء من نظام تشغيل Android Automotive (AAOS) أو من أنظمة المركبات إلى Android. لضمان جودة عمليات التنفيذ، يمكنك تكوين AAOS لاستخدام إحدى خاصيتي VHAL الجديدتين الموضحتين أدناه لنشر القيم بشكل فعال. يستخدم:
-
ANDROID_EPOCH_TIME
لاستخدام Android كمصدر الحقيقة للوقت. يدعم VHAL خاصية الكتابة فقط هذه، والتي تنقل تغييرات الوقت من Android إلى أنظمة المركبات الأخرى، مثل وحدات التحكم الإلكترونية (ECU) ووحدة التحكم في الجسم (BCM). -
EXTERNAL_CAR_TIME
لعدم استخدام Android كمصدر الحقيقة للوقت. في هذه الحالة، يدعم VHAL خاصيةEXTERNAL_CAR_TIME
للقراءة فقط ، والتي تنقل تغييرات الوقت من أنظمة المركبات الأخرى (مثل وحدات التحكم الإلكترونية وBCM) إلى Android.
يوفر AAOS أيضًا إستراتيجية TimeDetectorStrategy
قابلة للتكوين لمساعدتك في تحديد أولويات مصادر الوقت المختلفة داخل Android.
الروبوت هو مصدر الحقيقة للوقت
عند استخدام Android كمصدر للوقت، يمكن لمصنعي المعدات الأصلية مزامنة أنظمة السيارات الأخرى (بما في ذلك وحدات التحكم الإلكترونية وBCM) مع وقت Android.
للقيام بذلك، يجب أن يدعم تطبيق VHAL خاصية الكتابة فقط ANDROID_EPOCH_TIME
. ينشر Android تحديثًا للخاصية من خلال قراءة وقت النظام، سواء في وقت التمهيد أو كلما تم تغيير مصدر الوقت في Android.
الروبوت ليس مصدر الحقيقة للوقت
عندما لا يتم استخدام Android كمصدر للوقت، يمكنك مزامنة وقت Android ليكون مصدر الحقيقة للوقت (على سبيل المثال، مع وحدة التحكم الإلكترونية أو BCM). في هذه الحالة، يجب أن يدعم تطبيق VHAL خاصية القراءة فقط EXTERNAL_CAR_TIME
وينشر التحديثات لهذه الخاصية عندما يتغير مصدر الوقت أو يعيد معايرة الساعة.
يجب على مصنعي المعدات الأصلية أيضًا التأكد من:
- تم تضمين قيم
config_autoTimeSourcesPriority
فيcore/res/res/values/config.xml
. - تم تعيين الخاصية
config_enableExternalCarTimeToExternalTimeSuggestion
فيpackages/services/Car/service/res/values/config.xml
علىtrue
. - الوقت
external
له الأولوية المناسبة في تكوينTimeDetectorStrategy
. لمعرفة المزيد، راجع اكتشاف وقت GNSS . على سبيل المثال:<!-- Specifies priority of automatic time sources. Suggestions from higher entries in the list take precedence over lower ones. See com.android.server.timedetector.TimeDetectorStrategy for available sources. --> <string-array name="config_autoTimeSourcesPriority"> <item>external</item> <item>gnss</item> <item>network</item> <item>telephony</item> </string-array>
تفاصيل التنفيذ الداخلي لنظام Android
يحدث التدفق التالي عندما تكون خاصية ANDROID_EPOCH_TIME
VHAL مدعومة:
- يتلقى
TimeHalService
(في CarServices) بثًا من نظام Android لـIntent.ACTION_TIME_CHANGED
. - تنشر
TimeHalService
تحديثًا لخاصية VHALANDROID_EPOCH_TIME
. - يمكن لـ VHAL نشر القيمة الزمنية المستلمة إلى وحدات التحكم الإلكترونية و/أو وحدات BCM المختلفة.
يحدث التدفق التالي عندما تكون خاصية EXTERNAL_CAR_TIME
VHAL مدعومة:
- يقوم VHAL بتحديث خاصية
EXTERNAL_CAR_TIME
. - يقوم
TimeHalService
(في CarServices) بقراءة الخاصية من خلال الاشتراك. - يقوم
TimeHalService
بإنشاء وإرسالExternalTimeSuggestion
إلىTimeManager
. - يقوم
TimeManager
بإعادة توجيه الاقتراح إلىTimeDetectorService
. - يستخدم
TimeDetectorService
TimeDetectorStrategy
لاختيار وقت نظام جديد.