Как работать с несколькими пользователями в In-App Billing Library? (Лучшая практика)

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

  1. Несколько устройств и один пользователь

Вариант использования:

  • Пользователь U1 с учетной записью Google Play Store G1 подписывается на подписку S1.
  • Теперь пользователь U1 выходит из приложения, а пользователь U2 входит в приложение.

Запросы:

  • Что произойдет, если Пользователь U2 попытается подписаться на Подписку S1?
  • Должны ли мы ограничить пользователя U2, сказав, что эта подписка уже подписана на другого пользователя из этой учетной записи Google?
  1. Одно устройство и несколько пользователей

Вариант использования I:

  • Пользователь U1 с учетной записью Google Play Store G1 подписывается на подписку S1.
  • Пользователь U1 с учетной записью Google Play Store G2 пытается подписаться на подписку S1.

Запросы:

  • Должны ли мы ограничить пользователя U1, сказав, что вы уже подписались на эту подписку с помощью какой-либо другой учетной записи Google?

Вариант использования 2

  • Пользователь U1 с учетной записью Google Play Store G1 подписывается на подписку S1.
  • Пользователь U1 с учетной записью Google Play Store G2 пытается подписаться на подписку S2.

Запросы:

  • Должны ли мы разрешить пользователю подписываться на разные подписки с разными учетными записями Google?

Общие запросы:

  • Должны ли мы сопоставить каждого пользователя с другой учетной записью Google, и если пользователь попытается совершить покупку с какой-либо другой учетной записью Google, ограничить ее ИЛИ попросить его сначала отменить связь с существующей связанной учетной записью Google?
  • Можем ли мы подписаться (приобрести) подписку у 2 пользователей, использующих одну и ту же учетную запись Google Play? (Скажем, используя разные accountId https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid)

Я ожидаю ответа на мои запросы с точки зрения передового опыта и фактов.


person Navjot Singh Bedi    schedule 04.09.2020    source источник


Ответы (1)


Как покупка продуктов в приложении, так и подписка строго привязаны к учетной записи Google, с которой они были сделаны.

Вы не можете узнать из учетной записи Google покупки, сделанные другой учетной записью, если это возможно, это будет серьезной проблемой безопасности.

Если два пользователя (две учетные записи Google) хотят использовать одну и ту же подписку, оба должны покупать ее отдельно.

person Lluis Felisart    schedule 08.09.2020