it-swarm.com.ru

Android-манифест ограничивается планшетами

По деловым причинам я бы хотел ограничить свое Android-приложение строго планшетными устройствами. 

На данный момент я могу ограничить приложение для устройств Honeycomb, установив:

Android:minSdkVersion="11"

Но следующая версия Android (Ice Cream Sandwich) будет иметь более высокий номер версии для версий ОС для планшета и телефона. 

Можно ли указать какой-либо атрибут манифеста, чтобы ограничить его на планшетных устройствах? (Сотовый или более поздняя версия планшета)

28
Daniel Delaney

Вы найдете эту ссылку потрясающей: http://Android-developers.blogspot.com/2011/09/preparing-for-handsets.html

Проблема с тем, что мы называем «планшетом», заключается в том, что определение для evryone не одно и то же. Я думаю о Archos 5IT, который имеет тот же размер, что и телефон, но имеет фирменное наименование «планшет». Та же проблема с Dell Streak.

Я бы лично не назвал это планшетом ..

Поэтому, если вы хотите ограничить устройства размером 7 или 5 дюймов, вы должны использовать xlargeScreens и largeScreens. 

(Существует также ошибка в HTC flyer - 7 дюймов - при использовании больших экранов, вините HTC)

Я думаю, что игра с размером экрана в манифесте будет соответствовать вашим потребностям:

<supports-screens Android:smallScreens="false"
                  Android:normalScreens="false"
                  Android:largeScreens="false"
                  Android:xlargeScreens="true"
                  Android:anyDensity="true"
                  Android:requiresSmallestWidthDp="600"
                  Android:compatibleWidthLimitDp="integer"
                  Android:largestWidthLimitDp="integer"/>

enter image description here

45
Waza_Be
              Android:requiresSmallestWidthDp="600"
              Android:compatibleWidthLimitDp="integer"
              Android:largestWidthLimitDp="integer"

Будьте осторожны, Android Market в настоящее время не поддерживает этот атрибут для фильтрации (из официального руководства).

используйте экран поддержки большой и большой, и теперь у вас есть два варианта:

  • исключить из Маркета устройства с большим экраном, которые не являются планшетами вручную (+500 ...)

  • Вы можете программно измерить ширину и, если она меньше 600, говорят пользователю, что приложение несовместимо.

В то время как это, мы должны будем ждать, пока Маркет фильтрует по Android: requireSmallestWidthDp = "600" ...

2
AntPachon

пожалуйста, просмотрите документы - http://developer.Android.com/guide/practices/screens-distribution.html .

<manifest ... >
<supports-screens Android:smallScreens="false"
                  Android:normalScreens="false"
                  Android:largeScreens="true"
                  Android:xlargeScreens="true"
                  Android:requiresSmallestWidthDp="600" />
...
<application ... >
    ...
</application>

2
gmjordan

Я думаю, что официальная документация PhoneGap может вам помочь: http://phonegap.com/blog/2014/01/30/customizing-your-Android-manifest-and-ios-property-list-on-phonegap-build/

0
nzkevin