Эта версия приложения не настроена для выставления счетов через Google Play
когда я пытаюсь запустить свое приложение с помощью биллинга в приложении, я получаю сообщение об ошибке: "эта версия приложения не настроена для выставления счетов через Google Play. Регистрация справочный центр для получения дополнительной информации".
У меня есть разрешение на выставление счетов уже в файле манифеста, и у меня есть подпись .apk загружен в виде проекта на Google Play, и я также установил тот же подписанный apk на свой телефон.
любая помощь о том, как решить эту проблему?
17 ответов:
эта ошибка может быть вызвана несколькими причинами.
вот список требований для тестирования Google IAB.
требования:
- AndroidManifest должен включать " com.андроид.продажа.Биллинг " разрешение.
- APK встроен режим выпуска.
- АПК подпись С сертификат выпуска(ов).
- APK загружается в альфа/бета распределение канал (ранее-как черновик) в консоль разработчика хотя бы один раз. (занимает некоторое время ~2h-24h).
- IAB продукты публикуются и их статус, установленный до активный.
- добавлена тестовая учетная запись(ы) в консоли разработчика.
требования к испытанию:
- тест APK имеет тот же код версии как тот, который загружен разработчику приставка.
- тест APK является подпись С тот же сертификат(ы) как тот, который загружен в dev.приставка.
Ahh нашел решение после попытки в течение нескольких часов.
- Google занимает некоторое время, чтобы обрабатывать приложения и обновлять их на своих серверах, для меня это занимает около половины дня. Поэтому после сохранения apk в качестве проекта в Google Play вы должны подождать несколько часов, прежде чем продукты в приложении будут нормально реагировать и разрешать регулярные покупки.
- экспорт и подписать APK. Неподписанный APK, пытающийся сделать покупки, получит ошибку.
то же самое произойдет, если ваша опубликованная версия не совпадает с версией вы тестируете на вашем телефоне.
например, загруженная версия
android:versionCode="1", и версия, которую вы тестируете на своем телефоне,android:versionCode="2"
вам нужно подписать свой APK с вашим живым сертификатом. Затем установите его на тестовое устройство. Затем вы можете проверить InAppBilling. Если вы тестируете приложение путем прямого запуска через eclipse на устройство (в режиме отладки), то вы получите эту ошибку.
Если вы используете
android.test.purchasedКак SKU, он будет работать весь путь, но у вас не будет developerPayload в вашем окончательном ответе.Если вы используете свой собственный проект в элементе приложения вы можете проверить весь путь, но вы будете взимается, и поэтому придется вернуть его себе впоследствии.
вы не можете покупать товары с той же учетной записью gmail, которая используется для консоли разработки google play.
Если вы здесь с 2018 года, вам нужно скачать APK непосредственно из Play Store и установить "производный" APK. Возможно, это из-за того, что в игровом магазине Google есть функция "подписание приложений Google Play".
позвольте мне просто добавить, что случилось со мной, может помочь кому-то одному.
Это было в основном из-за подписания.
поскольку я добавил детали подписи в структуру проекта, Я думал, что каждый раз, когда я запускаю, ожидаемый подписанный apk устанавливается. Но был выбран тип сборки "debug".
ниже исправить решил проблему для меня.
- сгенерированный подписанный apk типа сборки "release".
- установить вручную АПК.
в моем случае я видел одно и то же сообщение из-за разных подписей установленного apk и загруженного на рынок apk.
В отличие от многих ответов и комментариев на SO и других сайтах, вам не нужно выполнять предварительные тесты с альфа/бета-версией вашего продукта, который был загружен из Google Play на ваше тестовое устройство (процесс публикации альфа/бета часто съедает полдня). Также вам не нужно загружать и повторно загружать подписанный релиз apk из вашей студии разработчика на тестовое устройство.
вы можете выполнить предварительную отладку Google Play в службах биллинга приложений, используя приложение отладки как загружается из студии разработчика непосредственно на тестовое устройство через ADB. Если вы испытываете ошибки, которые предотвращают это, вероятно, вы сделали что-то не так в своем коде. Обратите особое внимание на случай вашего SKU (идентификаторы продуктов) и их формат (например, если вы загружаете свой APK как com.mydomain.my_product_id, убедитесь, что вы пытаетесь приобрести его таким образом - предоставляя тот же случай и домен). Кроме того, обратите особое внимание на свой itemType - это должно быть либо "inapp", либо "subs" для управляемых/неуправляемых покупок или подписок в приложении, соответственно.
как предложил Чираг Патель, при условии, что у вас есть ваш платежный код правильно установлен, выполните все тестирование с помощью android.тест.приобретенный Sku (идентификатор продукта) во время предварительных тестов. Проверьте наличие этого идентификатора во время выставления счетов, чтобы передать его через проверку подписи, токена и полезной нагрузки, так как эти данные не предоставляются тестовой системой Google. Кроме того, дайте один из ваших тестовых продуктов этот идентификатор для проверки его покупки, разблокировки / загрузки и презентации на всем протяжении вашей схемы. Чтобы очистить покупку, просто потребляйте ее, передавая тот же Sku и строку токена, отформатированную таким образом - никакие другие поля не имеют значения :
"inapp:"+appContext.getAppContext().getPackageName()+":android.test.purchased";после завершения этой фазы тестирования перейдите к полу-живому тестированию с вашим альфа/бета-продуктом. Создайте группу Google (по сути, список рассылки), добавьте в нее электронные письма тестовых пользователей и добавьте / пригласите эту группу для тестирования вашего устройства в этом фаза (выполняется в разделе " APK " списка разработчиков Google вашего приложения). Покупки будут имитироваться, но фактически не взиматься - однако для очистки и повторного тестирования покупок Google указывает, что вы должны вернуть их из своего кошелька Google. Это единственная фаза тестирования, которая требует трудоемкого процесса использования альфа / бета-нагрузок и тестовых пользователей.
была та же проблема, и она не была решена, прежде чем я прочитал сообщение от DZDomi. Внезапно оказалось, что в консоли разработчика Google есть параметр, который вам нужно включить. В разделе "in app purchases" есть строка для вашего продукта, а в крайнем правом углу есть статус для него. Он должен быть активным!
в консоли разработчик:
Settings->Account details->License Testing-> учетные записи Gmail с тестовым доступоми введите здесь свои учетные записи
моя проблема была в том, что я попытался проверить его с помощью отладки.keystore, я имею в виду запуск его через eclipse.Я экспортировал его с хранилищем Ключей, с которым я опубликовал в альфа-режиме(он должен быть опубликован, прежде чем вы сможете его протестировать).установил его в свой телефон, и чем я мог бы проверить его нормально.
Если вы хотите отладить IAB, что вам нужно сделать, это:
отправить в google play версию вашего приложения с разрешением IAB на манифест:
добавить продукт в приложение на google play:администрирование биллинга в приложение
установите пользовательское хранилище ключей отладки со знаком:настройка Eclipse для использования подписанного хранилища ключей
проблема также возникает, когда вы добавили покупку в приложении после загрузки apk, но вы не опубликовали приложение в play store (альфа, бета и производство).
что в основном означает, что вы должны добавить покупку в приложении после того, как вы опубликовали apk в Play store (альфа, бета и производство). В противном случае вы не сможете приобрести или запросить покупку в приложении.
еще одна причина, не упомянутая здесь, заключается в том, что вам нужно тестировать на реальном устройстве. Когда эмулятор становится действительно хорошим,это простая ошибка.
решение
просто подождите некоторое время после загрузки вашего приложения в play store, потому что google занимает некоторое время, чтобы обновить приложение versions.It будет работать !
недавно google внедрил изменения в своих системах, и поскольку вы загрузили хотя бы один APK на свою консоль, вы можете проверить свои запросы в приложении с помощью своего приложения с любым кодом / номером версии.
перекрестная ссылка ссылке
настроить
gradleчтобы подписать отладочную сборку для отладки.android { ... defaultConfig { ... } signingConfigs { release { storeFile file("my-release-key.jks") storePassword "password" keyAlias "my-alias" keyPassword "password" } } buildTypes { debug { signingConfig signingConfigs.release ... } } }
Comments