LSPatchでアプリごとにダークモードにする(root化不要)

Androidロゴ

有機ELディスプレイ搭載のスマートフォンが続々と登場し、システムやアプリを省電力で目にやさしいダークモード(ダークテーマ)に設定している人も多いかと思います。

ただ、ダークモードに非対応のアプリも多く、開発者向けオプションのフォースダーク機能を有効にして、すべてのアプリを強制的にダークモードにしたりしても、一部のアプリでは表示が見づらくなったりおかしくなったりすることも...。

そこで、すべてのアプリをダークモードにするのではなく、ダークモードに非対応のアプリを個別にダークモードにすることにしました。
Xposedモジュールを使用しますが、root化は不要です。

準備

LSPatchのインストール

root化なしでXposedが使える(アプリ本体にXposedモジュールを組み込むことができる)LSPatch(manager.apk)をスマートフォンにダウンロード&インストールします。

LSPatch Framework
Rootless implementation of LSPosed framework, integrating Xposed API by inserting dex and so into the target APK.
root不要でXposedを使える「LS Patch」でChMate・Twitterの…
今回紹介するのは「LSPatch Maneger」というアプリで、Androidアプリ自体ににパッチを適用することで、通常はroot化などをしなければ使用できないXposed(LSPosed)モジュールによるカスタマイズを行えるという便利アプリです。

Force Darkのインストール

アプリを個別にダークモードにするXposedモジュールのForce Dark(app-release.apk)をスマートフォンにダウンロード&インストールします。

force_dark
Override force-dark for apps in module scope

ダークモードにするアプリを入手

ダークモードにするアプリをスマートフォンにインストールするか、アプリのapkファイルをAPKMirrorAPKPureなどから入手してスマートフォンに保存します。

作業

例として、ここではAndroidのシンプルなマルチタイマーアプリ「Quick Timer」をダークモードにします。

1.LSPatchを起動します。
「Shizukuが有効化されていません」と表示されますが、今回は使わないので気にしない。

1.LSPatchの起動画面LSPatch
 

2.「管理」のタブ(アイコン)をタップし、右下の「+」アイコンをタップします。
3.ディレクトリの選択のOKをタップします。

2.「管理」のタブLSPatch1
3.ディレクトリの選択LSPatch2

4.「新規フォルダを作成」をタップしてフォルダ名(ここでは適当に「あ」)を入力、OKをタップします。
5.4で作成したフォルダへのアクセスをLSPatchに許可するため、「このフォルダを使用」をタップ、許可をタップします。

4.新規フォルダを作成LSPatch3
5.フォルダのアクセス許可LSPatch4

6.スマートフォンにインストールされているアプリ、または、スマートフォンに保存したアプリのapkファイルのどちらかを選択してタップします。
7.パッチモードの「統合」をタップ、「モジュールを埋め込む」をタップします。

6.アプリの選択LSPatch5
7.パッチモードの選択LSPatch6

8.スマートフォンにインストールしたXposedモジュール(Force Dark)を選択してタップします(スマートフォンに保存したXposedモジュールのapkファイルを選択することもできます)。
9.「Force Dark」をチェックし、右下のチェックアイコンをタップします。

8.モジュールの選択LSPatch7
9.Force DarkをチェックLSPatch8

10.パッチモードの右下の「パッチを開始」をタップします。
11.パッチが終了したら戻るをタップ、LSPatchを(戻るボタンなどで)終了します。

10.パッチを開始LSPatch6
11.パッチ終了LSPatch9

12.4で作成したフォルダに保存されている、LSPatchで改変したアプリのAPKファイルをファイル管理アプリなどでスマートフォンにインストールします。

12.改変したアプリのAPKLSPatch10
 

12.LSPatchとXposedモジュールのForce Darkは不要なのでアンインストールします。

完成!

アプリ本体を改変してダークモードにしているので、改変したアプリのapkファイルを保存しておけば、どのスマートフォンにもファイル管理アプリなどでインストールできます。
でも、やっぱりなんとなく無理があるので、結局、元に戻してしまうんですよね...。

ビフォーQuickTimer1
アフターQuickTimer2