LoginSignup
18
19

More than 5 years have passed since last update.

4K解像度ハンドセット端末の発表されたけど、まだAndroid APIはxxxxhdpiに対応していない(追記あり)

Last updated at Posted at 2015-09-11

社内外でiOS9の対応が盛り上がっていますが、そういえばAndroidでも(Android 6.0以外で)結構大きなニュースがあったなあと思いだしたので共有します。
ある意味では、Android 6.0よりも深刻な気はしています。

5.5インチで4K(3840 x 2160)解像度端末の発表

Xperia Z5 Premium / Z5 / Z5 Compact 詳細比較。解像度とメモリの差に注意 - Engadget Japanese

一週間前の9/3に、Xperia Z5が発表されました。
今回のXperia Z5は3機種発表されており、その1つの「Xperia Z5 Premium」は世界初の「4K解像度のハンドセット端末」となります。

ディスプレイ関連情報(dpiは手計算)

項目 Z5 Premium Z5 Z5 Compact
画面サイズ 5.5インチ 5.2インチ 4.6インチ
解像度 3840 x 2160 1920 x 1080 1280 x 720
dpi 801dpi(xxxxhdpi) 424dpi(xxhdpi) 319dpi(xhdpi)

ご覧のとおり、Z5 Premiumでは既存のカテゴリ分類の最大である「xxxhdpi(480〜640dpi)」を遥かに上回っているため、新規カテゴリの「xxxxhdpi」に割り当てられることになるかと思われます。

(追記)実際には、動画や画像などのメディア表示は4K表示で行い、アプリ関連はFullHD(1920x1080)解像度として認識+表示されるようです。画面上ではアップコンバートされたような形で表示されるかと思います。

世界初4Kスマホ Xperia Z5 Premium、実はほとんどフルHD表示。写真&動画のみ4K - Engadget Japanese

とはいえ、5.5インチで4K表示が可能なディスプレイが登場していることは事実ですので、以下は「実際に現行のAPIでアプリも4K解像度表示されたらどうなるか」という体で読んでいただければと思います。(追記終わり)

とはいえ、実際にxxxxhdpiがすでにAndroid API側で認識されているかというと、そういうわけでもないようです。

まだOS側ではxxxxhdpiを想定していない?

DisplayMetrics | Android Developers

こちらがその名のとおり、DisplayMetrics関連のクラスになりますが、カテゴリ分けに使っている(と思われる)定数には、DENSITY_XXXXHIGHがありません。DENSITY_XXXHIGHまでのようです。

よく見るとコメントでも「xxxhdpiが入るのは4KのTVとかだから!」みたいなことが書いてあるので、本家もまだ2K解像度のハンドセット端末がうじゃうじゃ出てきている現実を直視できていないのかもしれません。

tools/aapt/AaptConfig.cpp - platform/frameworks/base - Git at Google

実際のリソース部分のディレクトリ分けをしているのはこの部分?っぽいですが、5.1.1の時点ではまだこちらも対応はされていないようです。(6.0はまだ公開されていないようなので、もしかしたら既に対応済みかもしれません。)

結論

上記の内容から、おそらく慌ててxxxxhdpiのリソースフォルダとリソースを用意しても、OS側で読み込んでくれない可能性はあります。が、このへんは端末(メーカー側)で対応している可能性もありますし、今後AOSPレベルで対応されることは間違いないでしょう。

こうなると、現状でAndroidのdpカテゴリは、ldpi〜xxxxhdpiで7種類になってしまいました。アプリ側は当然、画像リソースの管理をさらに考えたデザインを必要に迫られることになるでしょうし、「ハンドセットで4K解像度」の時点で、アプリ以外にも画像リソースを提供するAPIやWebデザインでも、これを踏まえた考慮が必要になってくることになるでしょう。

Z5 Premiumの国内販売は決まっていませんが、これを皮切りに他のメーカーでも4K解像度端末が販売されていくことは間違いありません。国内初の2K解像度端末「isai FL」が発売されて1年で他のメーカーからも2K解像度端末が発売されるようになっています。

そのことも踏まえ、今後のアプリやWebサイトのデザインは十分気をつけましょう。いつか自身の首を締めることになります。

おまけ(おさらい)

1dpあたりのpx数はこうなります。
ハンドセットは4〜6インチぐらいの端末を想定して書いています。

dp px 備考
ldpi 0.75px
mdpi 1px 10インチHD端末
hdpi 1.5px 7インチHD端末、10インチFHD端末
xhdpi 2px HDハンドセット端末、7インチFHD端末、10インチ2K端末
xxhdpi 3px FHDハンドセット端末、7インチ2K端末、10インチ4K端末
xxxhdpi 4px 2Kハンドセット端末、7インチ4K端末
xxxxhdpi 6px 4Kハンドセット端末

(追記)本文中にも記載していますが、Xperia Z5 Premiumではメディア(動画・画像)のみ4K表示ということでした。深くお詫び申し上げます。

18
19
2

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
18
19