Android utilise-t-il NTP pour synchroniser l'heure?
Les appareils Android utilisent-ils le protocole NTP (network time protocol) pour synchroniser l'heure?
Dans Mes paramètres de périphérique, je vois une case à cocher avec le texte suivant "synchroniser avec le réseau", mais je ne sais pas s'ils utilisent NTP.
J'en ai besoin pour ma thèse de baccalauréat pour laquelle j'utilise le GPS. Pour obtenir un signal GPS précis, le récepteur doit avoir une horloge exacte.
J'ai trouvé ce blog-entrée sur le web, mais je ne suis pas sûr s'il dit la vérité: accélérer NTP, GPS Lock in Android
4 réponses
Je sais à propos de Android ICS qu'il utilise un service personnalisé appelé: NetworkTimeUpdateService
. Ce service implémente également une synchronisation de L'heure NTP via le NtpTrustedTime
singleton.
Dans NtpTrustedTime
le serveur NTP par défaut est demandé à partir de la source de chaîne Système Android:
final Resources res = context.getResources();
final String defaultServer = res.getString(
com.android.internal.R.string.config_ntpServer);
Si l'option Synchronisation automatique de l'heure dans les paramètres système est cochée et qu'aucun service nitz time n'est disponible, l'heure sera synchronisée avec le serveur NTP depuis com.android.internal.R.string.config_ntpServer
.
Pour obtenir la valeur de com.android.internal.R.string.config_ntpServer
, vous pouvez utiliser la méthode suivante:
final Resources res = this.getResources();
final int id = Resources.getSystem().getIdentifier(
"config_ntpServer", "string","android");
final String defaultServer = res.getString(id);
Je voulais demander si les appareils Android utilisent le protocole ntp (network time protocol) pour synchroniser l'heure.
Pour la synchronisation générale de l'heure, les appareils dotés d'une capacité de téléphonie, où le fournisseur sans fil fournit des informations NITZ, utiliseront NITZ. Je crois comprendre que NTP est utilisé dans d'autres circonstances: fournisseurs sans fil NITZ, Wifi uniquement, etc.
Votre article de blog Cité suggère une autre circonstance: la synchronisation de l'heure à la demande à L'appui du GPS. C'est certainement concevable, même si Je ne sais pas s'il est utilisé ou non.
J'ai un Samsung Galaxy Tab 2 7.0 avec Android 4.1.1. Apparemment, il ne se synchronise pas avec ntp. J'ai chargé une application qui dit que ma tablette est à 20 secondes de ntp, mais elle ne peut pas la définir à moins que je ne racine l'appareil.
Pas une réponse exacte à votre question, mais un peu d'information: si votre appareil fait utiliser NTP pour le temps (par exemple. s'il s'agit d'une tablette sans capacités 3G ou GPS), le serveur peut être configuré dans /system/etc/gps.conf
- évidemment, ce fichier ne peut être édité qu'avec un accès root, mais il est visible sur des périphériques non enracinés.