在Android上设置一个shell的date

为了debugging目的,我想在特定的date运行我的应用程序。 当然,我可以在我的模拟器上手动更改date,但是我想知道是否有一个简单的方法从模拟器shell(我知道它不能从UI完成)。

Solutions Collecting From Web of "在Android上设置一个shell的date"

按照以前的答案传递秒数以来的答案在我的实例(WinXP Android SDK11 HVGA_1.6仿真器)上无效。 但是这个特殊的格式起作用

adb shell date -s "yyyymmdd.[[[hh]mm]ss]" 

[已编辑6/27/2011:添加语法的时间部分。]

我正在与Win 7合作。

为我工作的正确格式是:

adb shelldate-s“YYYYMMDD.hhmmss”

我在其他线程中看到了这个命令,对我来说真正有效的是在设置 – >date和时间下以这种方式设置选项。 (取消select自动date和时间以及时区)

模拟器中的日期和时间

来自adb的命令

不像linux,只有2种方法可以设置date。 date命令将通过调用设备驱动程序“dev / alarm”来设置时间。

  1. date-s“YYYYMMDD.hhmmss”或
  2. date -u“UTC_TIME_MILLI_SECS”

希望能帮助到你。

拉维潘迪特

这在Linux下适用于我,也许需要对夏令时进行一些修正:

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

以下在Mac OS X上的工作方式与计算机的时间完全一致,同时也设置了秒数。

对于Android 7仿真器,请使用以下命令:

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

对于Android 4/5/6仿真器,请使用以下命令:

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

注1: -e表示“仿真器”,当同时连接仿真器和设备时,它可以可靠工作。

注2:在2016年6月9日Siva Kranthi Kumar发表的评论中发现了第一个变体。尝试使用adb shell date -?的文档adb shell date -? 几乎是不可能的。 写得不好,太难理解了。

这适用于mac:

 adb shell date $(date -j mmddHHMM +%s) 

其中“mmddHHMM”是您要设置的月份,date,小时和分钟。

这将通过使用adbshell在你的模拟器中调用“date”命令,然后传递它自时代以来的秒数来设置时间(通过在本地mac上调用“date -j …”来计算)

你也可以更具体。 date(mac)上的格式是[[[mm]dd]HH]MM[[cc]yy][.ss]