Проверка

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

Как настроить аккаунт разработчика Google Play

Чтобы публиковать приложения и игры в Google Play, используйте Google Play Console. В Google Play Console также можно управлять товарами и настройками, связанными с платежами.

Чтобы получить доступ к Google Play Console, необходимо создать аккаунт разработчика Google Play.

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

Как включить функции, связанные с оплатой, в Google Play Console

После настройки аккаунта разработчика необходимо опубликовать версию приложения, которая включает библиотеку Google Play Платежей. Это необходимо, чтобы включить в Google Play Console функции, связанные с оплатой, например настройку товаров, которые вы хотите продавать.

Добавить зависимость библиотеки

Чтобы интегрировать платежную систему Google Play, сначала добавьте в приложение зависимость от библиотеки Google Play Платежей. Эта библиотека предоставляет доступ к Android API, которые подключают вас к Google Play. Там вы можете получить доступ к информации о покупках, запросить обновления о покупках, предложить пользователю совершить новые покупки и многое другое.

Библиотека Google Play Billing доступна в репозитории Google Maven. Добавьте зависимость в файл build.gradle приложения, как показано ниже.

Яркий

dependencies {
    def billing_version = "9.1.0"

    implementation "com.android.billingclient:billing:$billing_version"
}

Kotlin

dependencies {
    val billing_version = "9.1.0"

    implementation("com.android.billingclient:billing:$billing_version")
}

Если вы используете Kotlin, модуль KTX библиотеки Play Платежей содержит расширения Kotlin и поддержку сопрограмм, которые позволяют писать идиоматический код Kotlin при использовании платежной системы Google Play. Чтобы включить эти расширения в проект, добавьте в файл build.gradle приложения следующую зависимость:

Яркий

dependencies {
    def billing_version = "9.1.0"

    implementation "com.android.billingclient:billing-ktx:$billing_version"
}

Kotlin

dependencies {
    val billing_version = "9.1.0"

    implementation("com.android.billingclient:billing-ktx:$billing_version")
}

В примерах кода Kotlin на этой странице по возможности используются расширения KTX.

Загрузка приложения

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

Создание и настройка продуктов

После того как вы включите функции Google Play Платежей для своего приложения, вам нужно настроить товары для продажи.

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

В Google Play Console есть веб-интерфейс, который можно использовать для управления товарами.

Вместо веб-интерфейса вы можете использовать REST-ресурс inappproducts для контента, продаваемого через приложение, и REST-ресурс monetization.subscriptions для подписок в Google Play Developer API.

Как настроить Google Play Developer API

Google Play Developer API – это межсерверный API, который дополняет библиотеку Google Play Платежей для Android. Этот API предоставляет функции, недоступные в библиотеке Google Play Платежей, например безопасную проверку покупок и возврат средств пользователям.

Чтобы интегрировать платежную систему Google Play в приложение, необходимо настроить доступ к Google Play Developer API через Google Play Console. Инструкции вы найдете в статье Начало работы с Google Play Developer API.

Настроив доступ к Google Play Developer API, убедитесь, что вы предоставили разрешение Просмотр финансовых данных, которое необходимо для доступа к функциям, связанным с оплатой. Рекомендации и дополнительную информацию о настройке разрешений можно найти в статье Как добавлять пользователей аккаунта разработчика и управлять разрешениями.

Как настроить уведомления для разработчиков в режиме реального времени

Уведомления для разработчиков в режиме реального времени (RTDN) – это механизм, позволяющий получать уведомления от Google, когда разрешение пользователя в приложении меняется. RTDN использует Google Cloud Pub/Sub, что позволяет получать данные, которые отправляются на указанный вами URL или запрашиваются с помощью клиентской библиотеки. Благодаря этому вы сможете сразу реагировать на изменения статуса подписки, не отправляя запросы в Google Play Developer API. Обратите внимание, что неэффективное использование Google Play Developer API может привести к ограничениям квоты API.

Cloud Pub/Sub – это полностью управляемый сервис, с помощью которого можно обмениваться сообщениями между независимыми приложениями в режиме реального времени. Google Play использует Cloud Pub/Sub для публикации push-уведомлений по темам, на которые вы подписаны.

Чтобы получать уведомления, необходимо создать бэкенд-сервер, который будет обрабатывать сообщения, отправленные в вашу тему. Ваш сервер может получать эти сообщения, отвечая на HTTPS-запросы к зарегистрированной конечной точке или используя клиентские библиотеки Cloud Pub/Sub. Эти библиотеки доступны на разных языках. Дополнительную информацию можно найти в разделе Как создать подписку Pub/Sub.

Определите цены и квоты

Подробную информацию о ценах и квотах можно найти в разделах Цены и Квоты.

Оценка использования данных

Объем данных в уведомлении о подписке составляет примерно 1 КБ на запрос. Для каждой публикации и получения требуется отдельный запрос, или примерно 2 КБ данных на уведомление. Количество уведомлений в месяц зависит от платежного цикла и действий пользователей. В течение платежного цикла вы получите как минимум одно уведомление для каждого пользователя.

Настройка Cloud Pub/Sub

Чтобы включить уведомления для разработчиков в режиме реального времени, сначала настройте Cloud Pub/Sub в своем проекте Google Cloud Platform (GCP), а затем включите уведомления для приложения.

Чтобы использовать Cloud Pub/Sub, у вас должен быть проект GCP с включенным Cloud Pub/Sub API. Если вы не знакомы с GCP и Cloud Pub/Sub, ознакомьтесь с кратким руководством.

Создать тему

Чтобы начать получать уведомления, создайте тему, в которой Google Play будет их публиковать. Чтобы создать тему, следуйте инструкциям в разделе Создание темы.

Как создать подписку Pub/Sub

Чтобы получать сообщения, опубликованные в теме, необходимо создать подписку Pub/Sub на эту тему. Чтобы создать подписку Pub/Sub, выполните следующие действия:

  1. Прочитайте руководство по подписке Cloud Pub/Sub, чтобы определить, какую подписку настроить: push или pull.
    • Подписка на push-уведомления позволяет Cloud Pub/Sub отправлять уведомления в вашу защищенную серверную часть, отправляя HTTPS-запросы.
    • При подписке с извлечением ваш защищенный внутренний сервер должен инициировать запросы к серверу Cloud Pub/Sub для получения сообщений.
  2. Создайте подписку, следуя инструкциям в статье Как добавить подписку.

Предоставьте права на публикацию по вашей теме

Чтобы Google Play мог публиковать уведомления по вашей теме, необходимо предоставить ему соответствующие разрешения в Cloud Pub/Sub.

  1. Откройте консоль Google Cloud.
  2. Выберите проект и нажмите Pub/Sub на панели навигации слева.
  3. Найдите нужную тему и откройте сведения о разрешениях.

    доступ к настройкам разрешений
    Рисунок 1. Перейдите к настройкам в разделе Разрешения.
  4. Добавьте сервисный аккаунт google-play-developer-notifications@system.gserviceaccount.com и назначьте ему роль Издатель Pub/Sub.

    Добавление сервисного аккаунта Google Play в качестве издателя Pub/Sub
    Рисунок 2. Добавление сервисного аккаунта Google Play в качестве издателя Pub/Sub.
  5. Нажмите Сохранить, чтобы завершить настройку темы.

    настроенная тема
    Рисунок 3. настроенная тема.

Как включить уведомления для разработчиков в режиме реального времени

Чтобы включить уведомления для разработчиков в режиме реального времени, выполните следующие действия:

  1. Откройте Google Play Console.
  2. Выберите приложение.
  3. Выберите Монетизация > Настройка монетизации.
  4. Прокрутите страницу до раздела Уведомления для разработчиков в режиме реального времени.

    Раздел "Уведомления для разработчиков в режиме реального времени"
    Рисунок 4. Уведомления для разработчиков в режиме реального времени.
  5. Установите флажок Включить уведомления в режиме реального времени.

  6. В поле Название темы введите полное название темы Cloud Pub/Sub, которую вы настроили ранее. Название темы должно быть указано в формате projects/{project_id}/topics/{topic_name}, где project_id – уникальный идентификатор проекта, а topic_name – название созданной ранее темы.

  7. Нажмите Отправить тестовое сообщение. Пробная публикация позволяет убедиться, что все настроено правильно. Если тестовая публикация прошла успешно, вы увидите сообщение об этом. Если вы прикрепили подписку к этой теме, вы должны получить тестовое сообщение.

    Если у вас подписка с запросом, перейдите к ней в Cloud Console, нажмите View Messages (Посмотреть сообщения) и запросите сообщения. Чтобы избежать повторной доставки сообщений Cloud Pub/Sub, подтверждайте их получение. Если вы используете подписку push, проверьте, доставлено ли тестовое сообщение на конечную точку push. Код успешного ответа будет служить подтверждением сообщения.

    Если публикация не удалась, появится сообщение об ошибке. Убедитесь, что название темы указано правильно и у сервисного аккаунта google-play-developer-notifications@system.gserviceaccount.com есть доступ к теме с ролью Издатель Pub/Sub.

  8. Выберите типы уведомлений, которые хотите получать.

    • Получать уведомления о подписках и обо всех аннулированных покупках. Вы будете получать уведомления для разработчиков в режиме реального времени, связанные с подписками и аннулированными покупками. Вы не будете получать уведомления о покупках контента, оплачиваемого однократно.
    • Получать все уведомления о подписках и контенте, оплачиваемом однократно. Вы будете получать уведомления обо всех событиях, связанных с подписками и аннулированными покупками. Вы также будете получать события покупки контента для однократных покупок, например ONE_TIME_PRODUCT_PURCHASED и ONE_TIME_PRODUCT_CANCELED. Подробнее о событиях покупки рассказывается в разделе Жизненный цикл разовой покупки.
  9. Нажмите Сохранить изменения.

Проверка конфигурации

Чтобы получать уведомления для разработчиков в режиме реального времени, создайте защищенный бэкенд-сервер, который будет принимать сообщения, отправленные в тему Cloud Pub/Sub.

Вы можете проверить конфигурацию, нажав кнопку Отправить тестовое сообщение в Google Play Console, как описано в предыдущем разделе. Если вы не настроили бэкенд-сервер для получения уведомлений, то можете проверить конфигурацию с помощью инструмента командной строки gcloud. Инструкции по обработке сообщений с помощью gcloud приведены в разделе Получение сообщения из подписки.

Дальнейшие действия