Как продлить подписку вручную с помощью Play Billing Library?

Я использую Play Billing Library v1.0 для приложений. Поддержка выставления счетов в приложении для Android, и мы хотели бы разрешить пользователям продлевать подписку вручную в течение ее активного периода, чтобы продлить ее на соответствующий период.

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

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

Я использую следующий стандартный код для покупки подписки:

BillingFlowParams.Builder builder = BillingFlowParams.newBuilder()
        .setSku(skuId).setType(SkuType.SUBS);
int responseCode = mBillingClient.launchBillingFlow(activity, builder.build());

Если я снова попытаюсь купить ту же подписку,

"Вы уже подписаны на ХХХХХ [ОК]"

появляется сообщение об ошибке.

Я также пытался использовать метод .addOldSku() builder и передать тот же sku здесь, но это тоже не помогает.


person Alexander Bilchuk    schedule 11.12.2017    source источник


Ответы (2)


С помощью In-app Billing API пользователи могут продлевать подписку в течение ее активного периода, даже если подписка не настроена на автоматическое продление. Если пользователь приобретает подписку, пока подписка активна, она продлевается на соответствующий период по текущему тарифу.

Например, у Ахиллеса есть подписка на приложение Modern Hoplite. Его подписка в настоящее время истекает 1 августа. 10 июля он покупает подписку на 1 месяц по текущему тарифу. Этот месяц добавляется к его существующей подписке, поэтому срок действия подписки истекает 1 сентября.

Приложение должно передать это с помощью соответствующего пользовательского интерфейса. Например, если у пользователя нет активной подписки, в приложении может быть кнопка «Купить», но если у пользователя есть подписка, на кнопке может быть надпись «Продлить».

Пожалуйста, ознакомьтесь с более подробной информацией о In-App по ссылке ниже:

https://developer.android.com/google/play/billing/billing_subscriptions.html

person Jyubin Patel    schedule 15.12.2017

Обновите свою библиотеку Google Play Billing v1.0 Библиотека Play Billing v5

В последней версии In-app Billing,

  • Пользователь может вручную продлить существующую подписку. Подписка продлевается на соответствующий период времени.

  • Пользователь может повысить или понизить подписку, пока она активна. Старая подписка отменяется, а неиспользованная часть пропорционально применяется к новой подписке.

Прочитайте примечание к версии

person Fenil Patel    schedule 20.12.2017