Обход ограничений кэша Android Market на некоторых устройствах

Недавно мы выпустили игру на Android Market, и ее размер составляет около 41 МБ. Мы получили сообщения о том, что пользователи некоторых устройств не могут установить приложение (хотя, к сожалению, оно по-прежнему позволяет им его приобрести).

Изучая проблему, мы обнаружили, что на этих устройствах установлен какой-то лимит кеша, применяемый к загрузкам из Google Market, и наше приложение превышает этот лимит.

Основываясь на отчетах, мы установили следующие ограничения:

  • Samsung Galaxy S1, Galaxy Tab 7 и Captivate под управлением Android 2.2 имеют ограничение в 30 МБ.
  • HTC Desire/S/HD под управлением Android 2.2 имеет ограничение в 40 МБ

По-видимому, это ограничение распространяется только на Google Market, потому что пользователи Amazon могут без проблем загрузить игру, и она отлично работает на самих устройствах (проверено без проблем).

Ищем решение этого барьера. Предложение, которое я постоянно слышу, состоит в том, чтобы разделить активы и загрузить их отдельно после установки. Это кажется грязным, но я буду вынужден пойти по этому пути, если у кого-то нет идеи получше.


person Nick Gotch    schedule 21.07.2011    source источник
comment
Кто-нибудь знает способ эмулировать эту проблему для тестирования?   -  person Nick Gotch    schedule 27.07.2011
comment
нашел решение этой проблемы еще?   -  person MrJre    schedule 10.10.2011


Ответы (1)


На моем устройстве Huawey это ограничение вызвано /cache размером «раздела». Market загружает целые apk в /cache перед их установкой. Поскольку у него всего 30 МБ, Market отказывается загружать более крупный apk, утверждая, что ему не хватает места, даже если не установлено какое-либо другое приложение и много места в разделе /data.

Обходной путь: получите файл apk из нерыночного источника и установите его.

person Luiz    schedule 26.11.2011