Люди не могут загрузить наш конкретный продукт в Android Market - PullRequest
3 голосов
/ 31 января 2011

Мы недавно выпустили нашу игру на Android Market, но страдаем от серьезной проблемы.Мы получаем электронные письма и сообщения об ошибках от людей со всего мира, что они не могут загрузить нашу игру.

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

Кто-нибудь знает, в чем может быть проблема?

С наилучшими пожеланиями, Алекс

Редактировать: Поскольку проблема связана с загрузкой, мы предполагаем, что у нас есть файл манифеста Android.

Что происходит в первую очередь, когда пользователь загружает приложение из Android Market?Потому что, когда мы пытаемся загрузить наш продукт, загрузка «начинается», а затем появляется сообщение об ошибке «Загрузка не удалась».

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

Кажется, что ошибка начала возникать после того, как мы представили наше первое обновление, хотя и незначительное, а не изменение игры. Я действительно не понимаю, как это может повлиять на поведение Маркета.

Ответы [ 2 ]

6 голосов
/ 31 января 2011

Это 47 МБ!Вот что говорит мой Samsung Galaxy S:

D/DownloadManager( 2973): download aborted - not enough free space in internal storage
D/vending ( 6634): [174] DownloadManagerBroadcastReceiver.handleDownloadCompletedAction(): Got a download completed intent.
I/vending ( 6634): [174] DownloadManagerBroadcastReceiver.startNextDownload(): Found Paused URI null
I/vending ( 6634): [174] DownloadManagerBroadcastReceiver.startNextDownload(): No more paused downloads.
I/vending ( 6634): [174] DownloadManagerBroadcastReceiver.getDownloadStatus(): Unexpected status from download - 498
W/vending ( 6634): [174] DownloadManagerBroadcastReceiver.handleDownloadCompletedAction(): Couldn't find pathname for completed download URI
: content://downloads/download/188 -- assuming the download failed.
D/vending ( 6634): [174] LocalAssetDatabase.notifyListener(): 9122500792911627655 / DOWNLOAD_FAILED
E/DataRouter( 2577): [*] Received suspend/ resume event but DUN is not up so neglect

Неудивительно, что внутренней памяти недостаточно.

На что установлено ваше installLocation?Должно быть предпочитать Exterior (см. http://developer.android.com/guide/topics/manifest/manifest-element.html#install)

ДОБАВЛЕНО ПОЗЖЕ

Ху-ха, это отстой ...

Вы можете просмотреть исходный код Androidменеджер загрузок здесь: http://www.google.com/codesearch/p?hl=en#UMpkw0xvvPU/src/com/android/providers/downloads/Helpers.java

Немного экстраполируя, вы можете сделать то, что он делает, чтобы узнать, сколько места осталось в каталоге кэша загрузки:

File base = Environment.getDownloadCacheDirectory();
long bytesAvailable = getAvailableBytes(base);

public static long getAvailableBytes(File root) {
    StatFs stat = new StatFs(root.getPath());
    // put a bit of margin (in case creating the file grows the system by a few blocks)
    long availableBlocks = (long) stat.getAvailableBlocks() - 4;
    return stat.getBlockSize() * availableBlocks;
}       

Мои отчеты Samsung Galaxy S только 30 МБ свободно в этом кеше, следовательно, проблема. Общая внутренняя память телефона, однако, огромна ... У меня есть по крайней мере 1,5 ГБ.

Очевидно, что есть некоторые ограничения кеша загрузкиполитика на работе. Очень раздражает для вас.

Бесплатные байты в / кэш для нескольких телефонов

Samsung Galaxy S: 30756KB

Nexus One: 94352KB

Orange San Francisco: 38988KB

0 голосов
/ 27 апреля 2012

5 марта 2012 года Google объявил о новой политике, разрешающей использование до двух «файлов расширения» объемом до 2 гигабайт каждый.APK по-прежнему ограничен до 50 МБ.Вот объявление:

http://android -developers.blogspot.in / 2012/03 / android-apps-break-50mb-барьер.html

Посколькузагрузка таких дополнительных файлов происходит отдельно от загрузки вашего APK, вероятно, вы могли бы решить свою проблему, переместив часть вашего APK в файл расширения, чтобы размер APK оставался в пределах наименьших ограничений кеша загрузки, которые вы ожидаете(например, 30 МБ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...