2012-06-21 7 views
20

Androidエミュレータの時計がホストシステムの時計と一致しないのはなぜですか? ではありません。タイムゾーンの違いはありません。 - いつも数分遅れています。エミュレータの時計がホストシステムクロックと一致しません

手動でエミュレータの時刻を設定する以外に、同期させる方法はありますか?

+0

参考までに、世界時です。 – Sam

+0

デバイスの場合と同じように設定で時刻を設定できますか? – FoamyGuy

+0

@ Sam:Urrrm、私がOPを正しく理解すれば、彼は画面上の現在の時間を示すもののように彼が「時計」を意味すると思う。 – Squonk

答えて

8

私は時間を同期させる方法がないと信じています。エミュレータのデフォルトイメージは、UTC/GMT(+00:00)に設定されています。しかし、それを自分のものに変更することはできます。 最初に「自動タイムゾーン」(赤い矢印)のチェックを外し、「選択したタイムゾーン」(緑色の矢印)をクリックし、最後にタイムゾーンを選択してください。システムのものと一致する必要があります(黄色の矢印)。 AVDとホスト時間の間にいくつかの相違がある場合は timezone screen shots

+0

彼が示すように設定がオフになっている場合でも、自動的な日付と時刻を外し、手動で時間と分を設定することで、この方法で修正することは可能です。システム時間が何であれ含める。 – FoamyGuy

+0

はい:)あなたがそれを手動で設定することによって "同期"することが可能であると述べました。 – Raykud

+0

私はこれが**タイムゾーンの問題ではなく、数分ではなく(時間ではない)問題であると述べました。 –

6

、主にスナップショットから再起動した後、あなたはチェックおよび/またはあなたがエミュレータを立ち上げた直後の日付を設定するために​​を使用することができます。

+0

編集して明確な質問をもう一度お読みください。ありがとう! –

+1

'adb shell date'は有効な方法ですが、問題を完全に解決することはできません。 – Ninja

4

私はあなたの形式にする必要があり

adb shell date -s %date:~10,4%%date:~4,2%%date:~7,2%.%time:~0,2%%time:~3,2%%time:~6,2% 

-s値を発行することにより、適切なタイミングを得ることができますウィンドウでGoogleでトップリンク:)

としてこれを持っているとして:YYYYMMDD.hhmmss

の時刻形式が異なるのシステムでは、Windowsシェルの引数がの部分が異なります。

あなたはcmd.exeで試すことができます。

> echo %date% 
Thu 01/22/2015 

出力YYYYパーツを使用するには:%date:[position of char. 0-based],[length]%

Linuxのの場合:Windowsでは

adb shell date -s $(date +%Y%m%d.%H%M%S) 
+0

はmac端末上で動作します:エミュレータまたはルートデバイスでのみ動作します。 adbシェルsu root "date $(日付+%m%d%H%S)" – Thupten

0

を、あなたは引用符を配置する必要がありますパース時に数字の前に空白が返されたときのエラーを避けるために、datetime文字列を中心に。

完全な構文は次のようになります。

adb shell date -s '%date:~10,4%%date:~4,2%%date:~7,2%.%time:~0,2%%time:~3,2%%time:~6,2%' 
0

dateコマンドは、他の回答以来、新しいアンドロイドに変更されました。ルートが必要です。-sが認識されず、設定されたフォーマットが変更されています。

私はadb shell su root date -u @$(date +%s.%N)を使用していましたが、これは@を使用して、ナノ秒精度のUNIXタイムスタンプ秒を使用して設定しています。タイムスタンプにタイムゾーンを設定しないでください。何らかの理由でタイムゾーンを変更した場合は、-uが必要です。

関連する問題