Сделать мое приложение недоступным для планшета

Я новичок в приложениях (собираю свое первое), и я хотел бы знать, как исключить планшеты из моего манифеста Android и как сделать мое приложение недоступным для загрузки в магазине игр (при использовании планшета).

<manifest 
 android:versionCode="9"
android:versionName="0.2">
<uses-sdk android:minSdkVersion="16"
android:targetSdkVersion="16"/>

<compatible-screens>
    <!-- all small size screens -->
    <screen android:screenSize="small" android:screenDensity="ldpi" />
    <screen android:screenSize="small" android:screenDensity="mdpi" />
    <screen android:screenSize="small" android:screenDensity="hdpi" />
    <screen android:screenSize="small" android:screenDensity="xhdpi" />
    <screen android:screenSize="small" android:screenDensity="480" />
    <!-- all normal size screens -->
    <screen android:screenSize="normal" android:screenDensity="ldpi" />
    <screen android:screenSize="normal" android:screenDensity="mdpi" />
    <screen android:screenSize="normal" android:screenDensity="hdpi" />
    <screen android:screenSize="normal" android:screenDensity="xhdpi" />
    <screen
        android:screenDensity="480"
        android:screenSize="normal"/>
</compatible-screens>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

person Antonio Donnarumma    schedule 14.11.2015    source источник


Ответы (1)


Вы можете добавить это в свой манифест

 <manifest ... >

<compatible-screens>
    <!-- all small size screens -->
    <screen android:screenSize="small" android:screenDensity="ldpi" />
    <screen android:screenSize="small" android:screenDensity="mdpi" />
    <screen android:screenSize="small" android:screenDensity="hdpi" />
    <screen android:screenSize="small" android:screenDensity="xhdpi" />
    <!-- all normal size screens -->
    <screen android:screenSize="normal" android:screenDensity="ldpi" />
    <screen android:screenSize="normal" android:screenDensity="mdpi" />
    <screen android:screenSize="normal" android:screenDensity="hdpi" />
    <screen android:screenSize="normal" android:screenDensity="xhdpi" />
</compatible-screens>

 <application>

         <!--Rest of the manifest-->

Также Чтобы определить, является ли это планшетом с большим экраном, используйте этот метод.

public static boolean isTablet(Context context) {
return (context.getResources().getConfiguration().screenLayout
        & Configuration.SCREENLAYOUT_SIZE_MASK)
        >= Configuration.SCREENLAYOUT_SIZE_LARGE;

}

person Collins Abitekaniza    schedule 14.11.2015
comment
Я пробовал это, но это не работает :( это делает мое приложение также загружаемым для планшета - person Antonio Donnarumma; 15.11.2015
comment
Только что сделано! Фактический манифест заставляет меня загрузить мое приложение на планшет, может быть, потому что у меня есть макеты sw500dp (?) - person Antonio Donnarumma; 15.11.2015
comment
Хорошо, спасибо, так как я могу определить большой телефон? (›4') - person Antonio Donnarumma; 15.11.2015
comment
Я только что снова добавил правку в код, и вы можете использовать ее, чтобы определить, имеет ли устройство большой экран. - person Collins Abitekaniza; 15.11.2015
comment
Да, но я хочу, чтобы пользователи (которые используют планшеты) не могли загрузить мое приложение в магазине игр. - person Antonio Donnarumma; 15.11.2015
comment
У меня есть 3 макета для каждой страницы, обычный макет (для маленького телефона), h520dp для телефона большего размера и sw500dp для большего телефона. Так что мне нужно изменить это? - person Antonio Donnarumma; 15.11.2015
comment
Может попробовать изменить это - person Collins Abitekaniza; 15.11.2015
comment
И как я могу это сделать? Я хочу показать разные макеты для разных размеров экрана - person Antonio Donnarumma; 15.11.2015
comment
вы можете использовать квалификаторы размера, такие как res/layout/main.xml для небольших устройств и res/layout-large/main.xml для больших устройств. .android.com/training/multiscreen/screensizes.html - person Collins Abitekaniza; 15.11.2015