Проблема с фильтрацией Android Market

У меня есть следующий манифест:

<supports-screens
        android:smallScreens="true"
        android:normalScreens="true"
        android:largeScreens="true"
        android:xlargeScreens="true"
        android:anyDensity="true" />
<compatible-screens>
    <screen android:screenSize="small"/>
    <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="normal"/>
    <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:screenSize="large"/>
    <screen android:screenSize="large" android:screenDensity="ldpi"/>
    <screen android:screenSize="large" android:screenDensity="mdpi"/>
    <screen android:screenSize="large" android:screenDensity="hdpi"/>
    <screen android:screenSize="large" android:screenDensity="xhdpi"/>

    <screen android:screenSize="xlarge"/>
    <screen android:screenSize="xlarge" android:screenDensity="ldpi"/>
    <screen android:screenSize="xlarge" android:screenDensity="mdpi"/>
    <screen android:screenSize="xlarge" android:screenDensity="hdpi"/>
    <screen android:screenSize="xlarge" android:screenDensity="xhdpi"/>
</compatible-screens>
<uses-feature android:name="android.hardware.telephony" android:required="false"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="10"/>

Но все же рынок сообщает мне, что приложение совместимо только с почти половиной устройств. Например. некоторые модели Nexus S и Galaxy Tab 7" (Galaxy Tab GT-P1000) не поддерживаются, но, наоборот, поддерживается Galaxy Tab 10" (Galaxy Tab 10.1 SHW-M380K). Я совсем запутался, что я делаю не так?

Полный исходный код манифеста доступен здесь.


person Barmaley    schedule 24.08.2011    source источник
comment
Может быть, это связано не только с экранами. Не могли бы вы опубликовать весь свой манифест Android?   -  person Shlublu    schedule 24.08.2011
comment
@Shlublu: смотри выше - там ссылка, где источник   -  person Barmaley    schedule 24.08.2011


Ответы (2)


Если вы хотите, чтобы он был доступен везде, этого достаточно:

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

Забудьте о совместимых экранах или узнайте больше здесь: http://developer.android.com/guide/practices/screens_support.html

person Bart Blommaerts    schedule 24.08.2011
comment
Нет, это не работает. Я также пробовал эту комбинацию, и проблема все еще не решена. - person Barmaley; 24.08.2011
comment
Пожалуйста, опубликуйте свой полный файл манифеста, потому что код, который я только что скопировал, работает с моим приложением ... только что попробовал Samsung Galaxy Tab (7), чтобы быть уверенным. - person Bart Blommaerts; 24.08.2011
comment
Да, он работает с Galaxy Tab 7, но рынок сообщает, что это не так! - person Barmaley; 24.08.2011
comment
Возможно, это другой вопрос, например, GPS, интернет, телефон? сенсорный экран или другое разрешение пользователя - person Aracem; 24.08.2011
comment
@Bart Я разместил полный исходный код - смотрите ссылку выше - person Barmaley; 24.08.2011
comment
Я посмотрю более подробно сегодня вечером, но я предлагаю вам попробовать: собрать с 1.6, установить android:minSdkVersion=4, удалить android.hardware.telephony, удалить android.permission.CALL_PHONE, удалить совместимые экраны и проверить, если это работает. Если это так, попробуйте снова добавить разрешение и функцию использования. - person Bart Blommaerts; 24.08.2011
comment
@Барт. Сделал как вы советовали и теперь работает! Я имею в виду, что Galaxy Tab GT-P1000 есть в списке поддерживаемых устройств. Но... Мой клиент, у которого есть Galaxy Tab GT-P1000, сообщает мне, что рынок по-прежнему не позволяет ему скачивать/покупать - что странно. Есть идеи? - person Barmaley; 24.08.2011
comment
Я рад видеть, что проблема с поддерживаемыми устройствами решена. Касательно вашего клиента. Может ли он увидеть приложение в своем Android Market (на вкладке)? Видит ли он обновленную версию в браузере? И последнее, но не менее важное: может ли он установить приложение из браузера на своей вкладке? Прежде чем обновления станут видны на Android Market, может пройти «некоторое время». - person Bart Blommaerts; 24.08.2011
comment
Клиент @Bart может видеть из настольного браузерного приложения, но не может установить. Из таба он даже не видит приложения. Обновление было сделано 24 часа назад... - person Barmaley; 25.08.2011
comment
@Bart Я понял, что клиент из Казахстана, и у них есть некоторые ограничения на доступность рыночных приложений. Так что это не относится к проблемам программирования, это другой материал. Большое спасибо! - person Barmaley; 25.08.2011

Чтобы завершить обсуждение выше, рецепт был следующим:

  1. Удалить все теги <supports-screens> и <compatible-screens> из манифеста
  2. Перекомпилируйте проект под SDK, как указано в <uses-sdk android:minSdkVersion> (в данном случае Android 1.5)

Это все.

person Barmaley    schedule 25.08.2011