Harici saat algılama

Android 12'den itibaren Android, isteğe bağlı olarak harici bir zaman kaynağı kullanarak time_detector hizmetine Unix dönem zamanları önerebilir. Bu özellik AOSP'de varsayılan olarak etkin değildir.

Harici saat kaynağı, cihaz üreticilerinin Android'e tamamen özel saat önerileri sunmasına olanak tanır. Harici zaman kaynağından öneriler aldıktan sonra time_detector hizmeti, yapılandırılmış önceliklendirme kurallarını kullanarak sistem saatinin güncellenip güncellenmeyeceğini belirler.

Uygulama

Harici saat algılamayı desteklemek için cihaz üreticilerinin, sistem API çağrısı aracılığıyla time_detector hizmetine harici saat önerileri gönderen bir bileşen uygulamalıdır.

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 alanına ekleyin.

Aşağıdaki örnekte, Android'e sistem saatini ayarlarken harici saat önerilerine en yüksek önceliği vermesi söylenmektedir. Geçerli bir harici zaman önerisi yoksa sonraki kaynak (bu durumda gnss) kullanılır.

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

Sisteme harici bir zaman önerisi sağlamak için TimeManager'daki 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, mevcut Unix çağ zamanını ayarlamak için bu yönteme iletilen zaman damgasını kullanır.