Android 16 QPR2 でダークモードの機能が拡張され、ライトモードしかないアプリでもユーザ側でダークモードを有効にし色反転がされるようになります。
その挙動と回避手段の紹介です。
(本来であれば Android の実装ではダークテーマと表記されることが多いのですが、ここでは端末設定の表現であるダークモードで記載しています。)
拡張ダークモードの挙動
- 拡張ダークモードが適用される時は画像含めて白黒反転され、白黒でない色も微調整される
- 端末のダークモード設定に合わせてアプリのダークモード切り替えが実装されている場合は、拡張ダークモードが有効の場合は通常のダークモードが適用される
- 拡張ダークモードは適用されない
- アプリ内でダークモード切り替えが実装されている場合、アプリはライトモードだけど端末で拡張ダークモードが有効な場合は拡張ダークモードが適用される
以下は Google Play ストアアプリでの拡張ダークモード適用時の様子です。
| 通常ダークモード | 拡張ダークモード (アプリではライトモード固定にして 端末で拡張ダークモードを有効) |
|---|---|
![]() |
![]() |
拡張ダークモードが適用される時は漫画の画像も反転されたりします。
拡張ダークモードの回避方法
基本的にはダークモード対応をすることが最善ではありますが、アプリの theme で isLightTheme を false にすることで拡張ダークモードを回避することができます。
<style name="Theme.Template" parent="Theme.AppCompat.Light">
...
<item name="android:isLightTheme">false</item>
</style>
注意点としては、isLightTheme の属性は View を使っている場合に material-components のライブラリ内やプラットフォーム側で使われていたりするため、この設定を適用する場合は動作に問題がないか確認する必要があります。
ダークモードを提供しており、アプリでライトモードが設定されている時の拡張ダークモードの適用については回避手段を使うことはできないので、基本的に何もしないもしくは Android 16 QPR2 以降では端末設定に合わせるだけにすることをお勧めします。

