رصد الوقت الخارجي

بدءًا من Android 12، يمكن لنظام التشغيل Android استخدام مصدر خارجي للوقت بشكل اختياري لاقتراح أوقات بدء حقبة Unix على خدمة Time Detector. ولا تكون هذه الميزة مفعّلة تلقائيًا في مشروع Android المفتوح المصدر (AOSP).

يتيح لك مصدر الوقت الخارجي تقديم اقتراحات مخصّصة بالكامل بشأن الوقت إلى نظام التشغيل Android. بعد تلقّي اقتراحات من مصدر الوقت الخارجي، تحدّد خدمة time_detector ما إذا كان سيتم تعديل ساعة النظام استنادًا إلى قواعد تحديد الأولوية التلقائية للوقت التي تم ضبطها.

التنفيذ

لإتاحة رصد الوقت الخارجي، يجب تنفيذ مكوّن يرسل اقتراحات الوقت الخارجي إلى خدمة time_detector من خلال طلب نظام لواجهة برمجة التطبيقات.

لضبط المصدر الخارجي، استخدِم ملف إعداد خادم النظام core/res/res/values/config.xml. أضِف القيمة external إلى config_autoTimeSourcesPriority.

يوضّح المثال التالي كيفية توجيه نظام التشغيل Android لمنح اقتراحات الوقت الخارجية الأولوية القصوى عند ضبط ساعة النظام. في حال عدم توفّر اقتراح صالح لوقت خارجي، سيتم استخدام المصدر التالي، وهو gnss في هذه الحالة:

<string-array name="config_autoTimeSourcesPriority">
        <item>external</item>
        <item>gnss</item>
</string-array>

لتزويد النظام باقتراح وقت خارجي، استخدِم طريقة suggestExternalTime في TimeManager. إذا تم ضبط المصدر الخارجي باستخدام config_autoTimeSourcesPriority في ملف الإعداد ولم تتوفّر اقتراحات وقت ذات أولوية أعلى، يستخدم نظام التشغيل Android الطابع الزمني الذي تم تمريره إلى هذه الطريقة لضبط الوقت الحالي لفترة الطابع الزمني بتنسيق Unix.