| انتخاب پلتفرم: | iOS+ اندروید یونیتی |
خریدهای درونبرنامهای (IAP) محتوای دیجیتالی یا ویژگیهایی هستند که میتوانید از طریق Google Play در یک اپلیکیشن موبایل بفروشید تا اپلیکیشن شما نیازی به پردازش تراکنشهای مالی نداشته باشد. نمونههایی از خریدهای درونبرنامهای شامل محتوای مبتنی بر اشتراک یا قطعات بازی ویژه است.
Analytics رویدادهای IAP را در گزارش خریدهای درونبرنامهای نشان میدهد.
برای برنامههای اندروید، Analytics SDK با Google Play ادغام میشود.
در بیشتر موارد، SDK Analytics به طور خودکار رویدادهای IAP را بدون نیاز به فراخوانی API در برنامه شما جمعآوری میکند. علاوه بر این، در اینجا چند گزینه اضافی برای جمعآوری رویدادهای IAP وجود دارد:
شما میتوانید رویدادهای خرید درونبرنامهای را بهطور دستی و مستقیماً از برنامه خود و بدون تعامل با فروشگاه Play ثبت کنید.
همچنین میتوانید رویدادهای IAP را به صورت دستی در یک WebView ثبت کنید.
این راهنما نحوه تنظیم پروژه شما برای ردیابی خودکار را توضیح میدهد و برخی موارد خاص را که برای پیادهسازی به چند خط کد نیاز دارند، شرح میدهد.
قبل از اینکه شروع کنی
پروژه Firebase و کدبیس برنامه خود را همانطور که در بخش «شروع به کار با Google Analytics توضیح داده شده است، تنظیم کنید.
پروژه Firebase خود را به یک ویژگی Google Analytics 4 پیوند دهید.
مطمئن شوید که از آخرین SDK استفاده میکنید:
- برای ردیابی خودکار خرید درونبرنامهای: مطمئن شوید که برنامه شما از Analytics SDK نسخه ۱۷.۳.۰+ (یا Firebase Android BoM نسخه ۲۵.۲.۰+) استفاده میکند.
- برای ردیابی دستی خرید درونبرنامهای: مطمئن شوید که برنامه شما از Analytics SDK نسخه ۲۳.۲.۰+ (یا Firebase Android BoM نسخه ۳۴.۱۰.۰+) استفاده میکند.
پیادهسازی
در بیشتر موارد، SDK آنالیتیکس به طور خودکار رویدادهای IAP را بدون نیاز به کد اضافی ثبت میکند.
برای برنامههای اندروید، میتوانید رویدادهای IAP را به محض اتصال به Google Play اندازهگیری کنید.
اگر نیاز دارید خریدهای درونبرنامهای خارج از فروشگاه Play را پیگیری کنید، میتوانید رویدادهای IAP را با استفاده از قطعه کد زیر یا در یک WebView به صورت دستی ثبت کنید.
برای ردیابی دستی خریدهای درونبرنامهای، مطمئن شوید که از Analytics SDK نسخه ۲۳.۲.۰+ (یا Firebase Android BoM نسخه ۳۴.۱۰.۰+) استفاده میکنید.
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);
}
}