Как отслеживать покупки в приложении

Выберите платформу: iOS+ Android Unity


Покупки в приложении – это цифровой контент или функции, которые можно продавать в мобильном приложении через Apple App Store, чтобы вашему приложению не приходилось обрабатывать финансовые транзакции. Примеры покупок в приложении включают контент на основе подписки или специальные игровые элементы.

Analytics показывает события покупок в приложении в отчете о покупках в приложении.

Для приложений на платформе Apple SDK интегрируется с Apple App Store с помощью API StoreKit 1 и StoreKit 2 от Apple.

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

Подготовка

  • Настройте проект Firebase и базу кода приложения, как описано в статье Начало работы с Google Analytics.

  • Свяжите проект Firebase с ресурсом Google Аналитики 4.

  • Убедитесь, что вы используете последнюю версию SDK:

    • Для автоматического отслеживания покупок в приложении убедитесь, что в нем используется Analytics SDK версии 6.20.0 или более поздней.

    • Для ручного отслеживания покупок в приложении убедитесь, что в приложении используется Analytics SDK версии 12.5.0 или более поздней.

  • Ознакомьтесь с документацией Apple по API для покупок в приложениях StoreKit 1 и StoreKit 2.

Реализация

В большинстве случаев SDK Аналитики автоматически регистрирует события покупок в приложении, не требуя дополнительного кода.

Если вы используете StoreKit 1, Analytics SDK автоматически регистрирует события покупок в приложении для iOS. Если вы используете StoreKit 2, то можете регистрировать подтвержденные события покупок в приложении с помощью приведенного ниже фрагмента кода.

Если вам нужно отслеживать покупки в приложении, совершенные за пределами магазина приложений, вы можете регистрировать события покупок в приложении вручную в WebView. Обратите внимание, что SDK продолжит автоматически регистрировать покупки в приложении, когда это возможно, и не будет удалять дубликаты событий покупок в приложении, зарегистрированных вручную. Если вы вручную отслеживаете покупки в приложении, убедитесь, что используете Analytics SDK версии 12.5.0 или более поздней.

Swift

Если вы используете StoreKit 1, SDK Analytics автоматически регистрирует события покупок в приложении.

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

import StoreKit
import FirebaseAnalytics

// A user tapped a button to purchase an item.
func userTappedPurchaseUpgradeButton() {
  let product = ...
  purchaseSomeProduct(product)
}

func purchaseSomeProduct(_ product: Product) {
  // Purchase a Product. This is mostly standard boilerplate StoreKit 2
  // code, except for the Analytics.logTransaction() call.
  let result = try await product.purchase()
  switch result {
  case .success(let verification):
      let transaction = try checkVerified(verification)

      // Call this Firebase API to log the in-app purchase event.
      Analytics.logTransaction(transaction)

      await transaction.finish()
  ...
}

Objective-C

Если вы используете StoreKit 1, SDK Analytics автоматически регистрирует события покупок в приложении.

StoreKit 2 работает только со Swift, поэтому реализация Objective-C не поддерживается.