Как мы реализуем покупки в приложении, когда документация настолько противоречива?

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

Для начала есть две версии TrivialDrive:

github.com/googlesamples/android-play-биллинг

И затем из официальных документов:

developer.android.com/google/play/billing/billing_integrate.html

(здесь говорится об импорте файла IInAppBillingService.aidl и использовании ServiceConnections/IInAppBillingService)

developer.android.com/training/play-billing-library/preparing-iab-app.html

(здесь говорится, что нужно посмотреть на Trivial Drive v2, а также использовать компиляцию «com.android.billingclient:billing:dp-1» вместо импорта файла .aidl и использовать BillingManager)

developer.android.com/training/in-app-billing/preparing-iab-app.html

(здесь говорится, что нужно посмотреть Trivial Drive, импортировать файл .aidl и вместо этого использовать IabHelper + связанные прослушиватели для всего)

Может ли кто-нибудь объяснить, почему такая важная часть платформы Android повсюду имеет разные объяснения? Какую предполагаемую/последнюю структуру нам нужно использовать? Какие части устарели? На какой TrivialDrive я должен ссылаться?


person user8251758    schedule 04.07.2017    source источник


Ответы (1)


Как обсуждалось в примечаниях к версии биллинга в приложении, биллинг в приложении API имеет версию, и каждая версия предлагает дополнительные функции для вашего приложения. При этом вы можете сначала проверить свою версию биллинга в приложении.

Во время выполнения ваше приложение может запросить приложение Google Play Store, чтобы определить, какую версию API оно поддерживает и какие функции доступны.

  • Если вы используете биллинг в приложении версии 3 или более поздней, информация о версии не возвращается непосредственно Google Play. Вместо этого вы можете проверить, поддерживает ли Google Play версию In-app Billing API, которую вы используете, отправив запрос isBillingSupported.
  • Если используемая вами версия In-app Billing API более ранняя, чем версия 3, информация о версии возвращается в ключе API_VERSION объекта Bundle, переданного в методе sendBillingRequest. Для получения дополнительной информации см. Интерфейс службы выставления счетов в приложении< /а>.

Если вы используете In-app Billing API версии 3, используйте этот TrivialDrive для API версии 3, как указано в Обзор оплаты в приложении. В противном случае ознакомьтесь с соображениями по переходу, где было указано, что

API In-app Billing Version 2 был прекращен в январе 2015 года. Если у вас есть существующая реализация In-app Billing, использующая API версии 2 или более ранней, вам необходимо перейти на In-app Billing Version 3.

Наконец, эта документация является предварительной версией. в библиотеке Google Play Billing. Для API In-app Billing Version 3 вы можете использовать его как ссылка вместо этого.

Надеюсь, это поможет прояснить ситуацию.

person Teyam    schedule 05.07.2017
comment
Что означает предварительная версия в этом контексте? Должны ли мы использовать его в производстве или нет? - person IgorGanapolsky; 06.07.2017