بدءًا من الإصدار Android 12، يمكن لنظام التشغيل Android استخدام مصدر وقت خارجي اختياريًا لاقتراح أوقات حقبة يونكس على خدمة
time_detector
. لا يتم تفعيل هذه الميزة تلقائيًا في 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 الحالي.