Уже через пару дней можно использовать биллинг в приложениях для Android. Очень круто конечно. Итак, я начал работать над обновлением для своего приложения, чтобы реализовать это. Но теперь у меня проблемы. Вот что я сделал:
- Сначала я попробовал зарезервированные идентификаторы продуктов для тестирования статических ответов на биллинг в приложении. Работает без проблем.
- Я загрузил на рынок черновик APK (с подписью производства, без подписи отладки), который включал разрешение com.android.vending.BILLING.
- Когда я это сделал, я смог добавить в свое приложение на рынке «Продукты для продажи» и установить для него статус «Опубликовано».
- Я создал тестового пользователя и перезагрузил свое устройство, чтобы сделать этого тестового пользователя основной учетной записью на моем тестовом устройстве.
- Зарезервированный идентификатор продукта все еще работает.
Теперь возникает проблема. Когда я использую свой собственный идентификатор продукта (тот, который я добавил ранее, см. Выше), отображается диалоговое окно со следующим текстом:
« Ошибка приложения: эта версия приложения не настроена для Market Billing. Дополнительную информацию можно найти в справочном центре ».
В журнале нет ничего странного. Кто-нибудь знает, что я здесь делаю не так?
источник
Я обнаружил, что как только я загружаю новую копию своего APK на рынок, я испытываю эту «ошибку приложения» в течение следующего часа или около того. По прошествии хотя бы одного часа (иногда должно пройти до двух часов), я больше не получаю эту ошибку, и я могу без проблем покупать свои товары. Похоже, что серверам Google требуется не менее часа, чтобы обработать факт загрузки нового APK (что касается аспекта APK InApp Billing).
Поэтому я советую вам подождать 1-2 часа после загрузки APK, а затем посмотреть, появляется ли по-прежнему «ошибка приложения».
источник
Я тоже столкнулся с этой проблемой. Я наконец понял, что мое опубликованное приложение имело versionCode 3, мой черновик (неопубликованный apk с разрешением на выставление счетов) имел versionCode 4, а подписанный apk, который я использовал для тестирования биллинга в приложении, все еще имел versionCode 3. Как только я изменил versionCode на 4, я смог перейти на фактическую страницу продукта в приложении для покупки, которую я запрашивал.
источник
Это может произойти в подписанных выпущенных сборках, если apk, загруженный как черновик, не соответствует apk, запущенным в вашей системе в тестовом режиме. Просто убедитесь, что ваши сборки совпадают, вы должны быть в порядке в тестовом режиме и перестанете видеть ошибки.
Большое беспокойство здесь вызывает то, что мы увидим такое же поведение в производственной среде, т.е. мы выпускаем 1.0.0-1 с биллингом внутри приложения, затем мы выпускаем 1.0.0-2, и пользователи, использующие 1.0.0-1, будут невозможно совершить покупку или восстановить свои покупки и получить ту же ошибку (очень плохой пользовательский интерфейс). Искали документы на предмет упоминания об этом поведении как о специфическом для тестового режима, но пока безуспешно; мы добавили здесь ошибку: http://code.google.com/p/marketbilling/issues/detail?id=15#c0
источник
Я тоже столкнулся с той же проблемой ... но теперь проблема решена
Мои наблюдения основаны на нескольких испытаниях:
Надеюсь это поможет
источник
Скопировано из повторяющегося вопроса: https://stackoverflow.com/a/22469253/1321401
Эта ошибка может возникнуть по нескольким причинам.
Вот список требований для тестирования Google IAB.
Предпосылки:
Требования к тестированию:
PS: Отладка с сертификатом выпуска : https://stackoverflow.com/a/15754187/1321401 ( Thnx @dipp для ссылки)
PPS: Уже давно хотел попасть в этот список.
Thnx @zlgdev для обновления
источник
Мое решение заключалось в том, что мне нужно было использовать один и тот же ключ для подписи apk в Market (как черновик APK) и в тесте. Поэтому вместо простого запуска приложения мне всегда приходится экспортировать подписанный APK с каждым обновлением, удалять и переустанавливать его на устройстве с помощью команд командной строки apk. В принципе, вы также можете использовать собственное хранилище ключей в качестве хранилища ключей отладки, но это требует использования определенных жестко запрограммированных паролей и имен для ключей.
источник
Подумал, что поделюсь еще одним возможным решением, если вы получаете эту ошибку. Изначально я загрузил в Google черновик своего apk с включенным разрешением на выставление счетов, поэтому я смог настроить его в приложениях для покупок. Позже я загрузил другой apk без разрешения на выставление счетов, отсутствующего в моем AndroidManifest, что привело к ошибке. Определенно кажется маловероятным, но это случилось со мной, так что это возможно.
Изменить: в том же сгибе, если версия, которую вы отправили как черновик в Google, не подписана, ошибка также возникнет.
источник
Чтобы добавить свои два цента, я смог протестировать его, загрузив бета-версию и создав учетную запись Gmail с тестовым доступом на вкладке настроек с новой версией моего приложения ...
Сейчас перехожу в производство ...
Благодарность! Натан
источник
Старая ветка, но добавляю свой опыт ...
Установил apk с версиейCode 1 выше, чем был в магазине. Играл на 2 разных учетных записях на моем Nexus 7 и столкнулся с этой проблемой. Поэтому я удалил и переустановил из магазина, чтобы убедиться, что код версии совпадает. Даже подождав ночь, ошибка не исчезла.
Оказывается, мне нужно было удалить со всех трех учетных записей Google, которые я привязал к своему Nexus 7. Он восстановился, когда я удалил приложение явно из всех трех учетных записей на моем Nexus 7, а затем переустановил из магазина.
источник