자료 출처 : http://developer.android.com/about/dashboards/index.html
14일에 걸친 자료 조사 후 10월 1일에 나온 안드로이드 버전 결과를 보면 Gingerbread ( 2.3 ) 이 압도적으로 많습니다. 총 55.8% 입니다. Ice Cream Sandwich 가 23.7% 로 두번째를 차지하며 Froyo 가 12.9% 로 세번째를 차지합니다.
v2.2 + v2.3 = 79.5% 로 압도적입니다.
ICS 는 OS 자체가 무겁기 때문에 높은 Hardware 스펙을 요구하고, 따라서 최신폰들에만 올라가 있어, Froyo 와 Gingerbread 버전들의 단말들은 ICS 로 쉽게 업그레이드가 되지 않아 나온 결과라고 생각합니다.
추후에는 대폭 UI 개선이 있었던 Jelly Bean 이 대세를 이룰 것으로 예상되지만, 단말가격이 가격인지라 전환되는 기간이 좀 오래 걸릴 것으로 보입니다. 현재로서 한동안은 2.2 와 2.3 버전을 무시할 수 없을 것으로 보이네요. ( 추후 대비하여 Fragment 나 ActionBar 등의 Tablet 관련 속성들에 대한 선행학습이 필요하겠습니다. )
다음으로는 안드로이드 단말의 스크린 사이즈 및 density 입니다.
먼저 스크린 사이즈부터 살펴보겠습니다. 스크린 사이즈는 단말의 인치를 기준으로 판단하는데 정확한 기준은 없고 대략적으로 아래와 같은 기준으로 판단됩니다.
출처 : http://developer.android.com/guide/practices/screens_support.html
Small : 2~3.7
Normal : 3.7 ~ 4.3
Large : 4.3~7
XLarge : 7~10
Normal 이 압도적으로 많습니다. 총 86.5% 입니다.
다음은 Large와 XLarge, Small 인데, 각각 6.1%, 4.6%, 2.7% 를 차지합니다.
Froyo, Gingerbread, ICS 등의 버전이 압도적인 것을 고려했을 때 이해할만한 수치입니다. 다만, 요즘은 점점 Large 사이즈가 대세가 되어 가고 있죠.
XLarge 는 7인치 이상인 것으로 보아 패드들이 담당하고 있나 보군요.
Density 는 다음과 같은 기준으로 분류됩니다.
ldpi : ~120dpi
mdpi : ~160dpi
hdpi : ~ 240dpi
xhdpi : ~320dpi
hdpi 가 51.1%, xhdpi 가 28.7%, mdpi 가 18%, ldpi 가 2.2% 를 차지합니다.
비율로 봤을 때 최소한 hdpi, xhdpi, mdpi 3가지 resource 는 지원해야 합니다.
보통 WVGA 480x800 와 FWVGA 480x854가 hdpi 를 차지합니다. 이 역시 Gingerbread 를 생각하면 reasonable 합니다.
요즘은 HD 720 x 1280 가 줄줄이 나오고 있죠? 이 녀석이 바로 xhdpi 입니다. 요즘 추세로 보았을 때 이도 이해가 갑니다.
대부분의 HVGA 320 x 480 이 mdpi 를 차지하고 일부 WVGA 와 FWVGA 도 mdpi 를 차지하는 경우도 있습니다.
중요한 것은 현재의 최대 단말 상태와 앞으로의 추이를 보는 것입니다.
현재 단말은 Froyo & Gingerbread 기반으로 Normal hdpi 스크린을 지원하는 것이 가장 많은 user 를 서포트 하는 것입니다.
앞으로의 추이는 Jelly Bean 기반으로 Large xhdpi 가 대세를 이룰 것으로 보입니다.
한가지 더!! 놓치지 말아야 할 것은 위에 서술한 내용은 "최소한" 맞춰줘야 하는 내용이지 저것만 맞추면 된다는 아닙니다. 최선은 모든 단말에서 똑같은 뷰가 나오고 똑같이 기능하는 것입니다.
안드로이드는 하드웨어 스펙이 다양한 관계로 multi-screen support section 을 잘 살펴봐야 여러 스크린 사이즈를 지원할 수 있을 것으로 보입니다. http://developer.android.com/guide/practices/screens_support.html
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[android/안드로이드] pre-scaling & auto-scaling & compatible mode (0) | 2012.10.06 |
---|---|
[android/안드로이드] Supporting Multiple Screens ( 여러 스크린 지원 ) (0) | 2012.10.06 |
[android/안드로이드] Handler 의 내부적 진실. (4) | 2012.10.05 |
[android/안드로이드] Dialog positive button, neutral button, negative button 위치 (0) | 2012.10.05 |
[android/안드로이드] handler 관련 lint (warning) 제거 방법 (2) | 2012.10.05 |
댓글