מדידת הרכישות מתוך האפליקציה

בחירת פלטפורמה: ‫iOS+‎ Android Unity


רכישות מתוך האפליקציה (IAP) הן תוכן או תכונות דיגיטליים שאפשר למכור באפליקציה לנייד דרך Google Play, כך שהאפליקציה לא צריכה לעבד עסקאות פיננסיות. דוגמאות לרכישות מתוך האפליקציה כוללות תוכן שמבוסס על מינוי או פריטים מיוחדים במשחק.

‫Analytics מציג אירועי IAP בדוח 'רכישות מתוך האפליקציה'.

באפליקציות ל-Android, ‏ Analytics SDK משולב עם Google Play.

ברוב המקרים, Analytics SDK אוסף באופן אוטומטי אירועים מסוג IAP בלי לדרוש קריאות ל-API באפליקציה. בנוסף, יש כמה אפשרויות נוספות לאיסוף אירועים מסוג IAP:

  • אתם יכולים לרשום באופן ידני אירועים של רכישות מתוך האפליקציה ישירות מהאפליקציה שלכם, בלי ליצור אינטראקציה עם חנות Play.

  • אפשר גם לרשום אירועים של רכישות מתוך האפליקציה באופן ידני ב-WebView.

במדריך הזה מוסבר איך להגדיר את הפרויקט למעקב אוטומטי, ומתוארים בו כמה מקרים מיוחדים שבהם צריך להטמיע כמה שורות קוד.

לפני שמתחילים

  • מגדירים את פרויקט Firebase ואת בסיס הקוד של האפליקציה כמו שמתואר במאמר תחילת העבודה עם Google Analytics.

  • מקשרים את פרויקט Firebase לנכס Google Analytics 4.

  • מוודאים שאתם משתמשים ב-SDK העדכני ביותר:

    • כדי להפעיל מעקב אוטומטי אחרי רכישות באפליקציה: מוודאים שהאפליקציה משתמשת ב-Analytics SDK בגרסה 17.3.0 ואילך (או ב-Firebase Android BoM בגרסה 25.2.0 ואילך).
    • למעקב ידני אחרי רכישות באפליקציה: מוודאים שהאפליקציה משתמשת ב-Analytics SDK גרסה 23.2.0 ואילך (או ב-Firebase Android BoM גרסה 34.10.0 ואילך).
  • קישור אפליקציות Firebase ל-Google Play

הטמעה

ברוב המקרים, Analytics SDK רושם ביומן באופן אוטומטי אירועים של רכישות מתוך האפליקציה, בלי שנדרש קוד נוסף.

באפליקציות ל-Android, אפשר למדוד אירועים של רכישות מתוך האפליקציה ברגע שמקשרים אל Google Play.

אם אתם צריכים לעקוב אחרי רכישות מתוך האפליקציה שבוצעו מחוץ לחנות Play, אתם יכולים לרשום אירועים של רכישות מתוך האפליקציה באופן ידני באמצעות קטע הקוד הבא או ב-WebView.

כדי לעקוב באופן ידני אחרי רכישות באפליקציה, צריך לוודא שאתם משתמשים ב-Analytics SDK גרסה 23.2.0 ואילך (או ב-Firebase Android BoM גרסה 34.10.0 ואילך).

Kotlin

import android.os.Bundle
import com.google.firebase.analytics.FirebaseAnalytics

class MyClass(val analytics: FirebaseAnalytics) {

  ...

  fun logInAppPurchaseEvent(itemName: String, value: Double, currency: String) {
    val params = Bundle()
    params.putString(FirebaseAnalytics.Param.ITEM_NAME, itemName)
    params.putDouble(FirebaseAnalytics.Param.VALUE, value)
    params.putString(FirebaseAnalytics.Param.CURRENCY, currency)
    analytics.logEvent(FirebaseAnalytics.Event.IN_APP_PURCHASE, params)
  }
}

Java

import android.os.Bundle;
import com.google.firebase.analytics.FirebaseAnalytics;

public class MyClass {
  private FirebaseAnalytics analytics;

  ...

  public void logInAppPurchaseEvent(String itemName, Double value, String currency) {
    Bundle params = new Bundle();
    params.putString(FirebaseAnalytics.Param.ITEM_NAME, itemName);
    params.putDouble(FirebaseAnalytics.Param.VALUE, value);
    params.putString(FirebaseAnalytics.Param.CURRENCY, currency);
    analytics.logEvent(FirebaseAnalytics.Event.IN_APP_PURCHASE, params);
  }
}