【非root】Dozeを端末のみで無効化する【Shizuku/MacroDroid編】

前回の記事にて、Doze無効化の手順を紹介しました。
でも正直、再起動の度にpairやconnectが必要になるのが面倒くさいですよね?

というわけで今回は、

  • Shizukuを導入してadbを楽ちんにする
  • MacroDroidを使ってショートカット一発で動作させる

の2つを紹介します。

目次

Shizuku導入編

以下からShizukuをインストールします。
Releases · RikkaApps/Shizuku · GitHub

起動したら、ペアリングを選択。

ワイヤレスデバッグのペアリングを選択する

「開発者向けオプション」→「ワイヤレス デバッグ」→「ペア設定コードによる~~」を開くと、通知からペアリングコードを入力するよう求められますので、6桁のペアリングコードを入力してください。

通知からペアリングコードを入力

ペアリングが完了したら、「開始」でShizukuが常駐します。これでShizukuの導入は完了。

Shizukuを開始する

MacroDroid編

まずはShizuku上で、MacroDroidを承認してあげます。

Shizukuの承認が必要

そのあと、MacroDroidでマクロを作成します。

MacroDroidのマクロ作成画面

トリガーは「ショートカットで起動」、アクションは「シェルスクリプト」を選んでおけばOK。
シェルスクリプトの権限はShizukuを選択し、スクリプトにはdumpsys deviceidle disableを入力します。

シェルスクリプトの設定
※私は通知用に変数を作成していますが、必須ではありません。

最後に、作ったマクロを長押しして「ホーム画面にショートカットを作成」すれば完了です。

ホーム画面にショートカットを作成

次回端末を再起動したときは、Shizukuを開始してから、ホーム画面に置いたショートカットを叩けばOK。

おまけ rish導入編

※MacroDroidを使いたくない人向け(MacroDroidは有償なので)

Shizukuを起動すると、「ターミナルアプリで『Shizuku』を利用する」というメニューがあり、そこにやり方が書いてあります。
チュートリアルに従い、2ファイル(rishrish_shizuku.dex)を端末上にエクスポートしてください。

エクスポート出来たら、rishを編集(下の方にあるPKGをcom.termuxに書き換え)し、実行権限(chmod +x)を付与します。

それができたら、2ファイルをTermuxからmvコマンドで

/data/data/com.termux/files/usr/bin

に移動します。
これでTermuxでrish(adb shell)が使えるはず。

doze無効化をシェルスクリプト化する場合は、内容を以下にすればOK。

rish -c 'dumpsys deviceidle disable'

あとがき

これで簡単にDoze無効化ができるようになりました。ShizukuやMacroDroidはこれ以外の用途にも応用が利くので、使ってみてください。