Android 12'den itibaren Android, Time Detector hizmetine Unix dönemi zamanlarını önermek için isteğe bağlı olarak harici bir zaman kaynağı kullanabilir. Bu özellik, AOSP'de varsayılan olarak etkin değildir.
Harici zaman başlangıcı, Android'e tamamen özel zaman önerileri sağlamanıza olanak tanır. Harici zaman kaynağına ait önerileri aldıktan sonra time_detector
hizmeti, yapılandırılan otomatik zaman önceliklendirme kurallarına göre sistem saatini güncelleyip güncellemeyeceğine karar verir.
Uygulama
Harici zaman algılamayı desteklemek için sistem API'si çağrısı aracılığıyla time_detector
hizmetine harici zaman önerileri gönderen bir bileşen uygulamanız gerekir.
Harici kaynağı yapılandırmak için core/res/res/values/config.xml
sistem sunucusu yapılandırma dosyasını kullanın. external
değerini config_autoTimeSourcesPriority
öğesine ekleyin.
Aşağıdaki örnekte, Android'e sistem saatini ayarlarken harici saat önerilerine en yüksek önceliği vermesi söyleniyor. Geçerli bir harici zaman önerisi yoksa bu durumda bir sonraki kaynak (gnss
) kullanılır:
<string-array name="config_autoTimeSourcesPriority">
<item>external</item>
<item>gnss</item>
</string-array>
Sisteme harici bir zaman önerisi sunmak için TimeManager
içinde suggestExternalTime
yöntemini kullanın. Harici kaynak, yapılandırma dosyasında config_autoTimeSourcesPriority
kullanılarak yapılandırılmışsa ve daha yüksek öncelikli zaman önerileri yoksa Android, geçerli Unix dönemi zamanını ayarlamak için bu yönteme iletilen zaman damgasını kullanır.