HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
LINK
BACK
 

2013/02/17

Google Androidの多機種、多解像度端末向けの開発 TIPS Google Androidの多機種、多解像度端末向けの開発 TIPS

(Androidの多機種、多解像度端末向け開発方法 OS 1.5~4.2、ldpi~xhdpi/xxhdpiなど)

Tags: [Android開発]




● Androidの多機種対応の開発まとめ

 Androidデバイスは、画面サイズと解像度が沢山の種類があります。
 したがって、それぞれに対応する様に開発する事は非常に困難です。

 各機種の違いや解像度の一覧表を作成しました。

 ※ 用語の使い方に若干の間違いが有るかと思いますが、その時はメールにてご指摘ください。


● Androidの画面サイズ定義

 /res/layout デフォルト
 /res/layout-small 2.6~3.0インチ
 /res/layout-normal 4.0インチ
 /res/layout-large 4.8インチ~
 /res/layout-xlarge 7.0インチ~

● Androidの DIP定義

 DIPとは Android独自の単位で Density Independent Pixelの略。
 日本語では密度非依存ピクセルと言うらしい。

 /res/layout-ldpi 120dpi
 /res/layout-mdpi 160dpi
 /res/layout-tvdpi 213dpi (API 13~、ex. Nexus 7)
 /res/layout-hdpi 240dpi
 /res/layout-xhdpi 320dpi
 /res/layout-xxhdpi 480dpi (API 16~、ex. SONY Xperia Z, HTC butterfly)
 /res/layout-xxxhdpi 640dpi (API 18~) Extra extra extra High DPI

 比率 3/4(ldpi): 1(mdpi): 1.33(tvdpi): 1.5(hdpi): 2(xhdpi): 3(xxhdpi): 4(xxxhdpi)


● Androidの 縦横定義

 /res/layout-port
 /res/layout-land


● Androidの 長辺長め定義

 /res/layout-long
 /res/layout-notlong


● Androidアプリに設定するアイコンの DPI解像度別のサイズと格納ディレクトリ

 /res/layout-ldpi 36 x 36px
 /res/layout-mdpi 48 x 48px
 /res/layout-tvdpi 64 x 64px (API 13~)
 /res/layout-hdpi 72 x 72px
 /res/layout-xhdpi 96 x 96px
 /res/layout-xxhdpi 144 x 144px (API 16~)
 /res/layout-xxxhdpi 192 x 192px (API 18~)

 比率 3/4(ldpi): 1(mdpi): 1.33(tvdpi): 1.5(hdpi): 2(xhdpi): 3(xxhdpi): 4(xxxhdpi)


● Androidの DIP解像度での定義(3.2から有効の指定方法)

 /res/layout-sw480dp 短辺が 480dp以上の端末
 /res/layout-w600dp 横幅が 600dp以上の端末
 /res/layout-h360dp 縦幅が 360dp以上の端末

 ※ よくわからない挙動をする事も有る?
  ( h360dp有るのに h320dpを選ぶとか)


● Androidの画面解像度での定義(ドット バイ ドット)

 /res/layout-854x480-land 854x480の端末
 /res/layout-1280x800-land 1280x80の端末

 ※ ディレクトリ名は長辺の方を先に指定する
  (ディレクトリ名で "layout-800x1280"は間違い。コンパイル時にエラーが出る。)
 ※ 現在は非推奨の指定方法。



● Androidの確認に便利 LayoutTester for Developer

 開発者のためのLayoutTester
 Androidデバイスでは、画面サイズと解像度がたくさんある。したがって、開発することは非常に困難である。
 このアプリケーションでは、簡単に各デバイスの解像度を調べることができます。

jp.ne.neko.freewing.LayoutTester
PackageName: jp.ne.neko.freewing.LayoutTester
https://play.google.com/store/apps/details?id=jp.ne.neko.freewing.LayoutTester
Android開発者のためのLayoutTester ( jp.ne.neko.freewing.LayoutTester )






● Androidの OSのバージョンと APIの関係(おまけで分断層)

 API 3、OS 1.5 Cupcake ★★★
 - 壁 -
 API 4、OS 1.6 Donut ★★★
 - 壁 -
 (API 5、OS 2.0 Eclair) 黒歴史
 (API 6、OS 2.0.1 Eclair) 黒歴史
 - 壁 -
 API 7、OS 2.1 Eclair
 API 8、OS 2.2 FrozenYogurt ★★★
 - 壁 -
 (API 9、OS 2.3 Gingerbread) 黒歴史 ★★★ (拡張機能 Addonのコンパイル時に必要)
 API 10、OS 2.3.3 Gingerbread ★★★
 - 壁 -
 API 11、OS 3.0 Honeycomb 黒歴史
 API 12、OS 3.1 Honeycomb 黒歴史
 - 壁 -
 API 13、OS 3.2 Honeycomb ★★★
 - 壁 -
 API 14、OS 4.0 Ice Cream Sandwich
 API 15、OS 4.0.3 Ice Cream Sandwich
 - 壁 -
 API 16、OS 4.1.2 Jelly Bean
 API 17、OS 4.2 Jelly Bean
 - 壁 -
 API 18、OS 4.3.1 Jelly Bean ★★★
 - 壁 -
 API 19、OS 4.4.2 KitKat ★★★
 (API 20、OS 4.4.2 KitKat Wear)
 - 壁 -
 API 21、OS 5.0 Lolipop

 ※ ★★★が開発用 APIでインストール俺推奨



● DIP単位系での Androidの分類


 4インチ

 5インチ

 7インチ

 10インチ

 13インチ

 21インチ



● Android実機での検証結果





Tags: [Android開発]



[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外は Web構成の変更で移動する場合があります)
Copyright (c) 2013-2014 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/android/android_develop_multi_screen/