2013-07-26 1 views
1

를 확인? 나는 HD 화면 등 아수스 HD를 가지고 수행하는 장치를 식별 할 수있는 방법 HighDefinition 장치

나는 몇 가지 조사를했고, 나는 그것을 계산하는 것을 시도하고있는 몇 가지 매개 변수를 찾을 수 있습니다. . 제 정보가 GSM 아레나 (크기 및 PPI) 및 디바이스 통은 getDisplay()에서 수집 DisplayMetrics 내지

getDisplayMetrics();

Asus HD - 1920 x 1200 pixels, 10.1 inches (~224 ppi pixel density) - DisplayMetrics{density=1.5, width=1920, height=1128, scaledDensity=1.5, xdpi=159.89508, ydpi=159.58115} 
GTab - 800 x 1280 pixels, 10.1 inches (~149 ppi pixel density) - DisplayMetrics{density=1.0, width=800, height=1280, scaledDensity=1.0, xdpi=160.15764, ydpi=160.0} 
Xoom - 800 x 1280 pixels, 10.1 inches (~149 ppi pixel density) - DisplayMetrics{density=1.0, width=1280, height=752, scaledDensity=1.15, xdpi=149.82489, ydpi=149.41176} 
Xoom 2 ME - 800 x 1280 pixels, 8.2 inches (~184 ppi pixel density) - DisplayMetrics{density=1.0, width=1280, height=752, scaledDensity=1.0, xdpi=149.82489, ydpi=149.41176} 
nexus 7 - 800 x 1280 pixels, 7.0 inches (~216 ppi pixel density) 
nexus 7 2 - 1200 x 1920 pixels, 7.0 inches (~323 ppi pixel density) 
Gnote II - 720 x 1280 pixels, 5.5 inches (~267 ppi pixel density) 
Gnote - 800 x 1280 pixels, 5.3 inches (~285 ppi pixel density) 
Gtab 7.7 - 800 x 1280 pixels, 7.7 inches (~196 ppi pixel density) 
Gtab 7 - 600 x 1024 pixels, 7.0 inches (~170 ppi pixel density) 

나는 그것을 식별하는 매개 변수로 밀도를 사용하여 문질러서 있지만, 대부분의 장치는 1.0를 반환 (적어도 아수스 HD 1.5을 반환 않습니다)하지만 난 그 가치에 의존 할 수 있는지 모르겠어요.

다음 식별하기 위해 더 나은 aproach이있다?

+0

어떻게 당신은 "HD-화면"을 정의하는? – CommonsWare

+0

사실 저에게는 ppi가 매우 높은 장치가 있습니다 (결과적으로 이미지가 더 좋게 보이고 고해상도가되어야 함) –

+0

xhdpi 장치는 여전히 HD가 될 수 없기 때문에 xhdpi 장치를 대상으로하지는 않습니다. 갤럭시 탭 10.1 및 모토로라 줌). –

답변

0

에 관계없이 "HD 무엇인가"를 통해 인수. 당신이 Denisty에 근거한 것을 원한다면; 자원 한정자를 수행 :

를 파일에서 :

/values-xxxhdpi/hd.xml 
/values-xxhdpi/hd.xml 
/values-xhdpi/hd.xml 

hd.xml :

<resources> 
    <bool name="isWhatIClassifyAsHD">true</bool> 
</resources> 

(아래 설정하면 그들은 어쨌든 잘못된 것 같은 선택 사항입니다).

/values/hd.xml 
/values-mdpi/hd.xml 
/values-hdpi/hd.xml 

hd.xml :

활동에서 그런
<resources> 
    <bool name="isWhatIClassifyAsHD">false</bool> 
</resources> 

:

boolean isHD = getResources().getBoolean(R.bool.isWhatIClassifyAsHD); 
+0

음 ... 좋은 해결 방법 –

관련 문제