Как определить, есть ли на устройстве Android экран, т.е. является ли это приставкой Android?
Я знаю, что можно получить размеры экрана, но я хотел бы знать, смог ли кто-нибудь когда-нибудь узнать, есть ли у устройства Android экран или нет. т.е. будь то приставка или нет.
Я предполагаю, что возвращаемый размер экрана должен быть равен "нулю", но я не уверен, является ли это ответом в реальном мире.
Спасибо.
2 ответа
Решение
Вы можете проверить наличие телевизионного устройства.
public static final String TAG = "DeviceTypeRuntimeCheck";
UiModeManager uiModeManager = (UiModeManager) getSystemService(UI_MODE_SERVICE);
if (uiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_TELEVISION) {
Log.d(TAG, "Running on a TV Device");
} else {
Log.d(TAG, "Running on a non-TV Device");
}
В начале вашего кода вставьте этот код:
int screenSize = getResources().getConfiguration().screenLayout &
Configuration.SCREENLAYOUT_SIZE_MASK;
String toastMsg;
switch(screenSize) {
case Configuration.SCREENLAYOUT_SIZE_LARGE:
toastMsg = "Large screen";
break;
case Configuration.SCREENLAYOUT_SIZE_NORMAL:
toastMsg = "Normal screen";
break;
case Configuration.SCREENLAYOUT_SIZE_SMALL:
toastMsg = "Small screen";
break;
default:
toastMsg = "Screen size is neither large, normal or small";
}
Toast.makeText(this, toastMsg, Toast.LENGTH_LONG).show();
Вы можете определить размер экрана по toastMsg
,