2013-03-12 3 views
4

태블릿에서만 앱을 실행하고 싶습니다. 그래서 매니페스트 파일의 코드를 아래에 선언 한 :태블릿에만 표시되는 매니페스트이지만 앱은 삼성 Galaxy S2에서 계속 사용할 수 있습니다.

<supports-screens 
    android:smallScreens="false" 
    android:normalScreens="false" 
    android:largeScreens="true" 
    android:xlargeScreens="true" 
    android:anyDensity="false" 
    android:requiresSmallestWidthDp="600"/> 

을하지만 내 삼성 갤럭시 S2 전화 (hdpi 480x800)를 연결할 때, 아직 이클립스의 안드로이드 장치 선택기에 표시됩니다.

저는 7 인치와 10 인치 태블릿만을 지원하고 싶습니다. 어떻게해야합니까?

+4

AFAIK, Eclipse는 화면 크기를 필터링하지 않습니다. Play 스토어는 고전적인 화면 크기 버킷 (예 :'xlarge ')에 대해 수행합니다. – CommonsWare

답변

3

당신은보고 here을 할 수 있습니다. 당신이 쓴

매니페스트 제한이 목적을 위해 정확하게 정확하지 않습니다 :

사용이 :이 두 가지 방법으로 앱의 화면 크기의 지원에 대해 설명

<supports-screens android:smallScreens="false" 
        android:normalScreens="false" 
        android:largeScreens="false" 
        android:xlargeScreens="true" 
        android:requiresSmallestWidthDp="600" /> 

:

그것은 선언 앱이 전통적으로 태블릿이 아닌 '작은', '보통'및 '큰'화면 크기의 버킷을 지원하지 않음을 알립니다.

이 앱은 최소 600dp의 사용 가능 영역을 가진 화면 크기를 필요로한다고 선언합니다.

첫 번째 기술은 Android 3.1 이상을 실행하는 기기의 경우 일반 화면 크기에 따라 크기를 선언하기 때문입니다 양동이. requiresSmallestWidthDp 속성은 Android 3.2 이상을 실행하는 기기 용이며, 앱이 최소 밀도 독립적 픽셀 수에 따라 크기 요구 사항을 지정하는 기능을 추가했습니다. 이 예에서 앱은 600dp의 최소 너비 요구 사항을 선언합니다. 이는 일반적으로 7 인치 이상의 화면을 의미합니다.

귀하의 크기 선택은 당신의 디자인이 서로 다른 화면 크기에 얼마나 잘 작동하는지에 따라, 물론 다를 수 있습니다; 예를 들어 디자인이 9 인치 이상인 화면에서만 잘 작동하는 경우 최소 720dp 너비가 필요할 수 있습니다.

requiresSmallestWidthDp 속성을 사용하려면 Android 3.2 이상에서 애플리케이션을 컴파일해야한다는 추종이 있습니다. 이전 버전에서는이 속성을 인식하지 못하므로 컴파일 타임 오류가 발생합니다. 가장 안전한 방법은 minSdkVersion에 설정 한 API 수준에 맞는 플랫폼에서 앱을 개발하는 것입니다. 릴리스 후보를 빌드하기위한 최종 준비를 할 때 빌드 대상을 Android 3.2로 변경하고 requiresSmallestWidthDp 속성을 추가하십시오. 3.2보다 오래된 Android 버전은 해당 XML 속성을 무시하기 때문에 런타임 오류가 발생할 위험이 없습니다.

0

휴대 전화에 앱이 설치되지 않도록 필터링 할 수 없습니다 (Eclipse를 통해 또는 외부 소스에서 다운로드 한 경우). 이 설정을 사용하면 앱이 Google Play 마켓의 휴대 전화로 다운로드되지 않습니다.