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

Недавно у нас возникла проблема с обновлением приложения на Android Market.

А именно, после публикации обновления в нашей учетной записи издателя приложение Market на одном из наших шести устройств не нашло обновления. Уведомления об обновлении не было, и в Маркете отображается только старая версия.

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

  • Motorola Milestone с Android 2.1
  • HTC Incredible с Android 2.2 и Market 3.4.4
  • Samsung Galaxy Tab с Android 2.3.3 и Market 3.4.4
  • HTC Incredible S с Android 2.3 и Market 3.4.4
  • Iconia a1000 с Android 3.2 и Market 1.0.28

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

  • LG Optimus Me P350 с Android 2.2 и Market 3.4.4.

Разрешения и функции в первой версии нашего приложения:

ACCESS_NETWORK_STATE
INTERNET
WRITE_EXTERNAL_STORAGE
android.hardware.touchscreen
android.hardware.screen.portrait

а во второй версии мы добавили:

RECORD_AUDIO
RECORD_VIDEO
CAMERA
READ_PHONE_STATE
BILLING
ACCESS_FINE_LOCATION
WAKE_LOCK
GET_ACCOUNTS`
android.hardware.camera
android.hardware.microphone
android.hardware.location
android.hardware.location.gps
android.hardware.camera.autofocus
android.hardware.screen.landscape

Также мы добавили некоторые продукты в приложении, когда мы опубликовали вторую версию.


person Tamara    schedule 02.01.2012    source источник


Ответы (1)


Android Market фильтрует устройства в соответствии с вашими разрешениями. На некоторых устройствах отсутствует функция, для которой вы запрашиваете разрешение, но приложение все равно будет совместимо.

Используйте ‹ uses-feature >, чтобы сообщить рынку, какой конфигурация оборудования действительно необходима. Если вы не используете ‹ uses-feature > рынок будет фильтровать только по разрешению.

person stefan    schedule 02.01.2012
comment
uses-feature — это хорошо, но атрибут required — важный. Небольшой пример: приложение, использующее карты Google, не может запустить карту на Kindle Fire, но вы можете установить require="false", и его можно будет установить. Вы несете ответственность за то, чтобы приложение не вылетало при попытке открыть карту (в этом случае работает проверка поддерживаемых библиотек) - person WarrenFaith; 02.01.2012
comment
Я не уверен насчет «обязательного» атрибута. developer.android.com/guide/practices/compatibility.html и developer.android.com/guide/appendix/market-filters.html сделать упоминание ‹ use-feature › только для фильтрации рынка. - person stefan; 02.01.2012
comment
Большое Вам спасибо. Установка required=false для работы функций! - person Tamara; 05.01.2012
comment
Я обнаружил, что камера особенно странная: если у нее есть только передняя камера, она не считается камерой. (android-developers.blogspot.com/2012/07/) - person Johan vdH; 25.12.2013