[Android]ADBを使った時刻変更の方法

アラームや時刻関係のテストをするときは、毎回、設定画面から時刻を変更していたのでは効率が悪いですね。
こういうケースでは、ADB経由での時刻変更が便利です。
(時刻変更はRoot権限が必要なので、便利アプリから行うことができません)

以下、ADBを使った時刻変更の例です。

ADBからの時刻変更はRooted端末が必須です。
dateコマンドの詳細は下に貼り付けておきます。

AS:Android Studio 3.2.1
OS:Windows10 on VMWare
Device : Nexus7 2013 Rooted

 

>adb shell
$ su
# date 12252359

失敗時

date: cannot set date: Operation not permitted

成功時
Tue Dec 25 23:59:28 JST 2018

ステータスバーやホームアプリ、ウィジェットの時刻は、更新が遅かったり、
更新が発生しなくなったりするので注意。

ステータスバーの時刻は縦向き・横向きを切り替えると更新されます。

usage: date [-u] [-r FILE] [-d DATE] [+DISPLAY_FORMAT] [-s SET_FORMAT] [SET]

Set/get the current date/time. With no SET shows the current date.

Default SET format is “MMDDhhmm[[CC]YY][.ss]”, that’s (2 digits each)
month, day, hour (0-23), and minute. Optionally century, year, and second.

-d Show DATE instead of current time (convert date format)
-r Use modification time of FILE instead of current date
-s +FORMAT for SET or -d (instead of MMDDhhmm[[CC]YY][.ss])
-u Use UTC instead of current timezone

+FORMAT specifies display format string using these escapes:

%% literal % %n newline %t tab
%S seconds (00-60) %M minute (00-59) %m month (01-12)
%H hour (0-23) %I hour (01-12) %p AM/PM
%y short year (00-99) %Y year %C century
%a short weekday name %A weekday name %u day of week (1-7, 1=mon)
%b short month name %B month name %Z timezone name
%j day of year (001-366) %d day of month (01-31) %e day of month ( 1-31)

%U Week of year (0-53 start sunday) %W Week of year (0-53 start monday)
%V Week of year (1-53 start monday, week < 4 days not part of this year)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です