Androidデバイスは、ネットワークタイムプロトコル(NTP)を使用して時刻を同期しますか?
デバイス設定で、「ネットワークと同期する」という次のテキストのチェックボックスが表示されますが、NTPを使用しているかどうかはわかりません。
GPSを使用する学士論文のためにこれが必要です。正確なGPS信号を取得するには、受信機に正確なクロックが必要です。
私はこのブログエントリをウェブ上で見つけましたが、彼が真実を言っているかどうかはわかりません: NTPの高速化、AndroidでのGPSロック
Android ICSについて知っているのは、 NetworkTimeUpdateService
というカスタムサービスを使用していることです。このサービスは、 NtpTrustedTime
singletonを介してNTP時刻同期も実装します。
NtpTrustedTime
では、NTPシステム文字列ソースからデフォルトのAndroidサーバーが要求されます。
final Resources res = context.getResources();
final String defaultServer = res.getString(
com.Android.internal.R.string.config_ntpServer);
システム設定の自動時刻同期オプションがチェックされ、NITZタイムサービスが利用できない場合、時刻はcom.Android.internal.R.string.config_ntpServer
からNTPサーバーと同期されます。
com.Android.internal.R.string.config_ntpServer
の値を取得するには、次のメソッドを使用できます。
final Resources res = this.getResources();
final int id = Resources.getSystem().getIdentifier(
"config_ntpServer", "string","Android");
final String defaultServer = res.getString(id);
Androidデバイスが時刻を同期するためにネットワークタイムプロトコル(ntp)を使用しているかどうかを確認したかったのです。
一般的な時刻同期では、ワイヤレスプロバイダーが NITZ情報 を提供するテレフォニー機能を備えたデバイスはNITZを使用します。私の理解では、NTPは他の状況で使用されるということです。NITZフリーのワイヤレスプロバイダー、WiFiのみなど。
引用されたブログ投稿は、別の状況を示唆しています:GPSをサポートするオンデマンドの時刻同期。それが使用されるかどうかはわかりませんが、それは確かに考えられます。
Android 4.1.1のSamsung Galaxy Tab 2 7.0があります。どうやらそれはntpに同期していません。タブレットがntpから20秒遅れていると言うアプリをロードしましたが、デバイスをルート化しない限り設定できません。
質問に対する正確な答えではなく、少しの情報:デバイスdoes時間にNTPを使用する場合(例:3GまたはGPS機能のないタブレットの場合) 、サーバーは/system/etc/gps.conf
で設定できます。明らかに、このファイルはルートアクセスでのみ編集できますが、ルート化されていないデバイスで表示できます。