À partir d'Android 12, Android peut éventuellement utiliser un
source de temps pour suggérer des heures d'epoch Unix au
Service time_detector
. Ce n'est pas
activée par défaut dans AOSP.
L'origine temporelle externe permet aux fabricants d'appareils de fournir des
des suggestions d'horaires personnalisées sur Android. Après
recevoir des suggestions de l'origine de l'heure externe, le service time_detector
;
détermine si l'horloge système doit être mise à jour à l'aide de l'API
règles de priorisation.
Implémentation
Pour permettre la détection externe du temps, les fabricants d'appareils doivent implémenter un
composant qui envoie des suggestions d'horaires externes au time_detector
via un appel d'API système.
Pour configurer l'origine externe, utilisez core/res/res/values/config.xml
.
fichier de configuration du serveur système. Ajoutez la valeur external
à
config_autoTimeSourcesPriority
L'exemple suivant indique à Android de proposer des suggestions d'horaires externes pour
la priorité la plus élevée lors
de la définition de l'horloge système. S'il n'existe aucune ressource externe valide
d'horaires suggérés, le point de départ suivant, gnss
dans ce cas, est utilisé.
<string-array name="config_autoTimeSourcesPriority">
<item>external</item>
<item>gnss</item>
</string-array>
Pour fournir au système une suggestion d'horaire externe, utilisez le
suggestExternalTime()
dans TimeManager
. Si l'origine externe est configurée via
config_autoTimeSourcesPriority
dans le fichier de configuration et pas de niveau supérieur
les suggestions d'horaires prioritaires sont disponibles, Android utilise
code temporel transmis à cette méthode pour définir l'heure actuelle de l'epoch Unix.