Таргетинг только на устройства с высоким разрешением (в пикселях) на Android Market - PullRequest
13 голосов
/ 07 сентября 2010

Я хочу опубликовать приложение, которое работает только на экранах 800x480 или выше.

Я не хочу, чтобы пользователи с устройствами 480x320, 320x240 и т. Д. Получали его из Android Market. Как мне это настроить?

Market Filters , кажется, есть ответ, но я все еще не понимаю.

Ответы [ 5 ]

6 голосов
/ 10 сентября 2010

К сожалению, в текущем состоянии Маркета вы не можете этого сделать.Согласно справочному документу <supports-screens> - вы можете фильтровать только по «размеру экрана», и, как вы заметили, разрешения WVGA / FWVGA «нормальные».

Ваше приложение может обнаруживать его программно, используя класс DisplayMetrics, используя heightPixels и widthPixels, но это только после того, как оно было приобретено / установлено, чего, как я предполагаю, вы хотите избежать.

2 голосов
/ 14 сентября 2010

Я не пробовал это на Android, но я думаю, что это должно работать:

  • Сделайте ваше приложение пробным, чтобы его можно было бесплатно скачать, но не бесплатно, например, через день.
  • Теперь в вашем приложении выполните одно из двух действий: при запуске приложения определите размер экрана и просто отобразите общее сообщение о том, что это разрешение экрана не поддерживается, и нажмите кнопку выхода. Еще один способ сделать это - папка layout-480x320 отобразить то же сообщение и предоставить кнопку выхода для выхода из приложения. Таким образом, вы можете иметь все неподдерживаемые размеры экрана, отображать это сообщение и не иметь никакой функциональности. Папка layout по умолчанию будет иметь пользовательский интерфейс для поддерживаемых размеров экрана. Таким образом, на неподдерживаемых устройствах вы также можете указать, какие телефоны поддерживаются в сообщении.
  • Не забудьте указать в файле манифеста <supports-screens android:anyDensity="false" />.
  • Теперь, когда пользователь загружает ваше приложение на неподдерживаемых устройствах, с него не будет взиматься плата из-за однодневной пробной версии, а также будет четко показано, что его / ее устройство не поддерживается и может выйти и удалить приложение.

Это не сделает ваше приложение невидимым в неподдерживаемых разрешениях, но позволяет использовать простой и понятный механизм связи с пользователем.

1 голос
/ 07 января 2012

после нажатия на Google hard, я нашел в качестве манифеста конфигурации:

<compatible-screens>
<screen android:screenSize=["small" | "normal" | "large" | "xlarge"]
        android:screenDensity=["ldpi" | "mdpi" | "hdpi" | "xhdpi"] />
...

как описано здесь .

В вашем случае вы можете уменьшить количество скачиваний до следующих размеров:

WVGA800 (480x800) WVGA854 (480x854) 600x1024

эти экраны занимают 71% рынка.

прокрутите вниз по следующим ссылкам, чтобы найти доли рынка и разрешение имен.

доля рынка

прокрутите вниз, чтобы найти имена разрешений

Надеюсь, это поможет. Приветствия

0 голосов
/ 15 сентября 2010

Что касается Android приложение , я не уверен. Хороший вопрос.

Однако, если вы пишете приложение для браузера на HTML / Javascript, вы можете проверить его в Javascript, используя комбинацию screen.width / height, document.documentElement.clientWidth / Height и нескольких других методов. Если бы вы действительно этого хотели, это было бы способом заблокировать ваш сайт на компьютерах с низким разрешением.

Вы также можете указать, что CSS будет реагировать по-разному в зависимости от размера экрана с помощью медиа-запросов, хотя это будет меньше о блокировке и больше о адаптации к среде.

На сайте Quirksmode есть хорошая статья о тонкостях определения размера экрана и других атрибутов в среде мобильного браузера.

0 голосов
/ 07 сентября 2010

ОБНОВЛЕНИЕ: Это не работает (см. Комментарии ниже)

В вашем манифесте:

<supports-screens 
     android:largeScreens="true"
     android:normalScreens="false" 
     android:smallScreens="false"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...