Готовимся, Готовимся

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

Настройте учетную запись разработчика Google Play

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

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

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

Включите функции, связанные с выставлением счетов, в консоли Google Play.

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

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

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

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

классный

dependencies {
    def billing_version = "7.0.0"

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

Котлин

dependencies {
    val billing_version = "7.0.0"

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

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

классный

dependencies {
    def billing_version = "7.0.0"

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

Котлин

dependencies {
    val billing_version = "7.0.0"

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

Примеры кода Kotlin, представленные на этой странице, по возможности используют KTX.

Загрузите свое приложение

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

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

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

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

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

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

Настройте API разработчика Google Play

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

В рамках интеграции биллинговой системы Google Play в ваше приложение вам необходимо настроить доступ к API разработчика Google Play через консоль Google Play. Инструкции см. в разделе «Начало работы с API разработчика Google Play» .

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

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

Уведомления разработчиков в режиме реального времени (RTDN) — это механизм получения уведомлений от Google при изменении прав пользователя в вашем приложении. RTDN использует использование Google Cloud Pub/Sub , что позволяет вам получать данные, которые либо передаются на заданный вами URL-адрес, либо опрашиваются с помощью клиентской библиотеки . Эти уведомления позволяют вам немедленно реагировать на изменения состояния подписки, избегая необходимости опроса API разработчика Google Play. Обратите внимание, что неэффективное использование API разработчика Google Play может привести к ограничениям квот 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 с включенным API Cloud Pub/Sub. Если вы не знакомы с GCP и Cloud Pub/Sub, см. краткое руководство .

Создать тему

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

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

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

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

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

Cloud Pub/Sub требует, чтобы вы предоставили Google Play права на публикацию уведомлений по вашей теме.

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

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

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

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

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

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

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

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

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

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

    Для подписки по запросу перейдите к подписке в Cloud Console, нажмите «Просмотр сообщений» и приступайте к получению сообщений. Вам следует подтвердить любое полученное вами сообщение, чтобы избежать повторной доставки Cloud Pub/Sub. Для принудительной подписки проверьте, доставлено ли тестовое сообщение на вашу конечную точку push-уведомлений. Код успешного ответа будет служить подтверждением сообщения.

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

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

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

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

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

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

Следующие шаги

,

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

Настройте учетную запись разработчика Google Play

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

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

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

Включите функции, связанные с выставлением счетов, в консоли Google Play.

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

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

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

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

классный

dependencies {
    def billing_version = "7.0.0"

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

Котлин

dependencies {
    val billing_version = "7.0.0"

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

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

классный

dependencies {
    def billing_version = "7.0.0"

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

Котлин

dependencies {
    val billing_version = "7.0.0"

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

Примеры кода Kotlin, представленные на этой странице, по возможности используют KTX.

Загрузите свое приложение

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

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

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

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

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

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

Настройте API разработчика Google Play

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

В рамках интеграции биллинговой системы Google Play в ваше приложение вам необходимо настроить доступ к API разработчика Google Play через консоль Google Play. Инструкции см. в разделе «Начало работы с API разработчика Google Play» .

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

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

Уведомления разработчиков в режиме реального времени (RTDN) — это механизм получения уведомлений от Google при изменении прав пользователя в вашем приложении. RTDN использует использование Google Cloud Pub/Sub , что позволяет вам получать данные, которые либо передаются на заданный вами URL-адрес, либо опрашиваются с помощью клиентской библиотеки . Эти уведомления позволяют вам немедленно реагировать на изменения состояния подписки, избегая необходимости опроса API разработчика Google Play. Обратите внимание, что неэффективное использование API разработчика Google Play может привести к ограничениям квот 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 с включенным API Cloud Pub/Sub. Если вы не знакомы с GCP и Cloud Pub/Sub, см. краткое руководство .

Создать тему

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

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

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

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

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

Cloud Pub/Sub требует, чтобы вы предоставили Google Play права на публикацию уведомлений по вашей теме.

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

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

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

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

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

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

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

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

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

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

    Для подписки по запросу перейдите к подписке в Cloud Console, нажмите «Просмотр сообщений» и приступайте к получению сообщений. Вам следует подтвердить любое полученное вами сообщение, чтобы избежать повторной доставки Cloud Pub/Sub. Для принудительной подписки проверьте, доставлено ли тестовое сообщение на вашу конечную точку push-уведомлений. Код успешного ответа будет служить подтверждением сообщения.

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

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

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

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

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

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

Следующие шаги