Mierz zakupy w aplikacji

Zakupy w aplikacji to treści lub funkcje cyfrowe, które można sprzedawać w aplikacji mobilnej przez Google Play lub Apple App Store. Aplikacja nie musi więc w ich przypadku przetwarzać transakcji finansowych. Przykładami zakupów w aplikacji są treści dostępne w ramach subskrypcji lub specjalne dodatki do gier.

Analytics wyświetla zdarzenia związane z zakupami w aplikacji w raporcie Zakupy w aplikacji.

W przypadku aplikacji na Androida pakiet SDK Analytics jest zintegrowany z Google Play. W przypadku aplikacji na platformę Apple pakiet SDK integruje się z Apple App Store za pomocą interfejsów API StoreKit 1 i StoreKit 2 od Apple.

W większości przypadków pakiet SDK Analyticsautomatycznie zbiera zdarzenia związane z zakupami w aplikacji bez konieczności wywoływania interfejsu API w aplikacji. W iOS możesz też ręcznie rejestrować zdarzenia związane z zakupami w aplikacji w widoku WebView oprócz zdarzeń związanych z zakupami w aplikacji zbieranych automatycznie. Z tego przewodnika dowiesz się, jak skonfigurować projekt pod kątem automatycznego śledzenia, i poznasz kilka przypadków specjalnych, które wymagają wdrożenia kilku wierszy kodu.

Zanim zaczniesz

Aplikacje na Androida

  • Upewnij się, że Twoja aplikacja korzysta z pakietu Analytics SDK w wersji 17.3.0 lub nowszej (albo Firebase Android BoM w wersji 25.2.0 lub nowszej).

  • Połącz aplikacje Firebase z Google Play.

Aplikacje na platformę Apple

  • Sprawdź, czy używasz najnowszego pakietu SDK:

    • W przypadku automatycznego śledzenia zakupów w aplikacji: upewnij się, że Twoja aplikacja korzysta z pakietu SDK Analytics w wersji 6.20.0 lub nowszej.

    • W przypadku ręcznego śledzenia zakupów w aplikacji: upewnij się, że Twoja aplikacja korzysta z pakietu SDK Analytics w wersji 12.5.0 lub nowszej.

  • Zapoznaj się z interfejsami API zakupów w aplikacji StoreKit 1 i StoreKit 2 firmy Apple, czytając dokumentację Apple.

Implementacja

W większości przypadków pakiet SDK Analytics automatycznie rejestruje zdarzenia związane z zakupami w aplikacji bez konieczności dodawania dodatkowego kodu.

Wdrażanie w aplikacjach na Androida

W przypadku aplikacji na Androida możesz mierzyć zdarzenia związane z zakupami w aplikacji od razu po połączeniu z Google Play.

Implementacja w aplikacjach na platformę Apple

W przypadku aplikacji na iOS, jeśli używasz StoreKit 1, pakiet SDK Analytics automatycznie rejestruje zdarzenia związane z zakupami w aplikacji. Jeśli używasz StoreKit 2, możesz rejestrować zweryfikowane zdarzenia związane z zakupami w aplikacji za pomocą poniższego fragmentu kodu.

Jeśli chcesz śledzić zakupy w aplikacji dokonane poza App Store, możesz też ręcznie rejestrować zdarzenia zakupu w aplikacji w widoku WebView. Pamiętaj, że pakiet SDK będzie nadal automatycznie rejestrować zakupy w aplikacji, gdy będzie to możliwe, i nie będzie usuwać duplikatów żadnych zdarzeń in_app_purchase zarejestrowanych ręcznie. Jeśli ręcznie śledzisz zakupy w aplikacji, upewnij się, że używasz pakietu SDK Analytics w wersji 12.5.0 lub nowszej.

Swift

Jeśli używasz StoreKit 1, pakiet SDK Analytics automatycznie rejestruje zdarzenia związane z zakupami w aplikacji.

Jeśli używasz StoreKit 2, użyj tego kodu, aby rejestrować zdarzenia związane z zakupami w aplikacji.

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

Jeśli używasz StoreKit 1, pakiet SDK Analytics automatycznie rejestruje zdarzenia związane z zakupami w aplikacji.

StoreKit 2 jest dostępny tylko w języku Swift, więc implementacja w Objective-C nie jest obsługiwana.