2014-11-25 5 views
7

Android TV 또는 Android 모바일에서 앱이 실행되고 있는지 확인하는 방법이 있습니까?앱이 Android TV에서 실행 중인지 확인하는 방법

실행중인 빌드를 확인하는 방법을 알고 있습니다. 앱이 Android TV와 모바일에서 실행중인 경우 특정 서비스를 시작하고 싶습니다. 두 도서관을 같은 도서관에두기를 희망했다.

답변

2

일부 옵션은 다음과 같습니다

1)

2) TV 특정 클래스

3를 감지하는 반사를 사용하여 대형 스크린) 터치 스크린

의 부족을 감지 hasSystemFeature를 사용을 위해 시스템을 쿼리

자세한 정보

https://developer.android.com/training/tv/start/hardware.html

(210)

그리고 장치 중 하나 android.hardware.type.television 또는 android.software.leanback 시스템 기능을 가진 것으로 자신을 광고하는 경우이 true를 반환합니다 구글 TV

Identify GoogleTv from Android app

+2

는 안드로이드 팀은 androidTV에 대한 https://developer.android.com/training/tv/start/hardware.html가 – leafartist

12
private boolean isDirectToTV() { 
    return(getPackageManager().hasSystemFeature(PackageManager.FEATURE_TELEVISION) 
     || getPackageManager().hasSystemFeature(PackageManager.FEATURE_LEANBACK)); 
} 

에 대한 비슷한 대답. Android TV 및 Fire TV가 올바르게 처리합니다. 나는 다른 환경에서 아직 시도하지 않았다. 안드로이드 문서에서 Handling TV Hardware에서

+0

한이 방법이 있습니다 이런 식으로 검사를 권장 당신은 쉽게 해당 플랫폼에서 기능을 플러그인, 난 그냥 안드로이드 텔레비젼에서 지금 재생 카드에 사용됩니다. – sschrass

20

는 :

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") 
} 
+1

이것은 정확히 Google에서 언급 한 내용입니다. –

관련 문제