6
2

More than 5 years have passed since last update.

Android10の強制ダークモードは割としっかりダークしてくれる

Last updated at Posted at 2019-09-04

本日PixelシリーズにAndroid10の正式版がリリースされました。
目玉機能の1つがダークテーマ(ダークモードはiOSのほう)ですよね。

アプリがダークテーマに対応するにはきちんと対応する方法と、Androidの方でそれっぽくダークにしてくれる方法の2つがあります。
後者の強制ダークモードですが、Googleの謎技術でかなりいい感じにダークになります。

設定方法

アプリ

targetSdkVersionを29にするだけです。以上。ダークテーマ用リソースを用意する必要も追加のコード改修も必要ありません。

スマホ

Pixel3aでは以下の方法で有効にできます。

設定->ディスプレイ->ダークテーマをON
theme_on_25.png

設定->システム->開発者向けオプション->フォースダークのオーバーライドをON
Screenshot_20190904-133542.png

これでAPI Level29でビルドされたアプリはダークテーマで表示されます。

結果

弊社のプロダクトであるCASTというアプリで試してみました。

イントロ画面
Screenshot_20190904-134515.pngScreenshot_20190904-134437.png

びっくりしたのが、イントロの画面にLottieというアニメーションライブラリを利用しているのですが、そのアニメーションに使っているロゴタイトルがダークテーマの時に白黒反転しています。でも上のアイコンは色味が変わっていないように見えます。もちろんダーク用リソースなぞ用意していません。Androidがよしなにダークにしてくれています。

ステータスバーは流石に対応していないようです。

メイン画面(BottomNavigationを使用)
Screenshot_20190904-134536.pngScreenshot_20190904-132950.png

もともと白いテキストは白のまま、黒いテキストは白っぽくなり、黒いアイコンは白に変換してくれているようです。アクセントカラーに青を採用していますが、アクセントカラーは変わらないようです。

ダイアログ
Screenshot_20190904-134553.pngScreenshot_20190904-133005.png

強制ダークモードを外すには

この強制ダークモードですらダークにしたくないという場合はThemeから無効にできるようです。

values-v29/styles.xml
<style name="AppTheme" parent="Theme.MaterialComponents.Light">
    <item name="android:forceDarkAllowed">false</item>
</style>

ダークテーマ | Android Developers
https://developer.android.com/preview/features/darktheme

とはいえ開発者向けのオプションを有効にしないといけないので使う人は少なそうです。後でちゃんとダークテーマに対応しましょう。

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2