ویژگیهای اضافی
Callback اتریبیوشن
میتوانید یک Callback برای مطلع شدن از تغییرات اتریبیوشن تنظیم کنید. ما منابع مختلفی را برای اتریبیوشن در نظر میگیریم، پس این اطلاعات را بهصورت ناهمزمان ارائه میدهیم.
این مراحل را برای اضافه کردن Callback اختیاری در اپلیکیشن دنبال کنید:
-
یک متد با signature delegate
Action<AdTraceAttribution>ایجاد کنید. -
پس از ایجاد شیء
AdTraceConfig، متدadtraceConfig.setAttributionChangedDelegateرا با متد ایجادشده فراخوانی کنید. همچنین میتوانید از lambda با همان signature استفاده کنید. -
اگر به جای
AdTrace.prefabاز اسکریپتAdTrace.csبه یکGameObjectدیگر اضافه شده، حتماً نام آنGameObjectرا بهعنوان پارامتر دومAdTraceConfig.setAttributionChangedDelegateارس ال کنید.
چون Callback با استفاده از instance AdTraceConfig پیکربندی میشود، adtraceConfig.setAttributionChangedDelegate را قبل از AdTrace.start فراخوانی کنید:
using io.adtrace.sdk;
public class ExampleGUI : MonoBehaviour {
void OnGUI() {
if (GUI.Button(new Rect(0, 0, Screen.width, Screen.height), "callback")) {
AdTraceConfig adtraceConfig = new AdTraceConfig("{Your App Token}", AdTraceEnvironment.Sandbox);
adtraceConfig.setLogLevel(AdTraceLogLevel.Verbose);
adtraceConfig.setAttributionChangedDelegate(this.attributionChangedDelegate);
AdTrace.start(adtraceConfig);
}
}
public void attributionChangedDelegate(AdTraceAttribution attribution) {
Debug.Log("Attribution changed");
// ...
}
}
تابع Callback هنگام دریافت دادههای نهایی اتریبیوشن توسط SDK فراخوانی میشود. در تابع Callback به پارامتر attribution دسترسی دارید. خلاصهای از ویژگیهای آن:
string trackerTokenتوکن ردیاب اتریبیوشن جاریstring trackerNameنام ردیاب اتریبیوشن جاریstring networkسطحبندی شبکه اتریبیوشن جاریstring campaignسطحبندی کمپین اتریبیوشن جاریstring adgroupسطحبندی گروه تبلیغاتی اتریبیوشن جاریstring creativeسطحبندی creative اتریبیوشن جاریstring clickLabelبرچسب کلیک اتریبیوشن جاریstring adidشناسه دستگاه Adtracestring costTypeرشته نوع هزینهdouble? costAmountمقدار هزینهstring costCurrencyرشته ارز هزینه
اتریبیوشن کاربر
این Callback مانند Callback اتریبیوشن، هر بار که اطلاعات اتریبیوشن تغییر کند فعال میشود. هر زمان که به اطلاعات اتریبیوشن جاری کاربر نیاز دارید با فراخوانی متد زیر روی instance AdTrace دسترسی داشته باشید:
AdTraceAttribution attribution = AdTrace.getAttribution();
اطلاعات اتریبیوشن جاری تنها پس از ردیابی نصب اپلیکیشن توسط backend و فعالسازی Callback اتریبیوشن در دسترس است. امکان دسترسی به مقدار اتریبیوشن کاربر قبل از راهاندازی SDK و فعالسازی Callback اتریبیوشن وجود ندارد.
Callback های Session و Event
میتوانید Callback هایی برای مطلع شدن از Event ها و/یا Session های موفق و ناموفق تنظیم کنید.
تابع Callback برای ردیابی موفق Event ها:
// ...
AdTraceConfig adtraceConfig = new AdTraceConfig("{Your App Token}", AdTraceEnvironment.Sandbox);
adtraceConfig.setLogLevel(AdTraceLogLevel.Verbose);
adtraceConfig.setEventSuccessDelegate(EventSuccessCallback);
AdTrace.start(adtraceConfig);
// ...
public void EventSuccessCallback(AdTraceEventSuccess eventSuccessData) {
// ...
}
تابع Callback برای ردیابی ناموفق Event ها:
// ...
AdTraceConfig adtraceConfig = new AdTraceConfig("{Your App Token}", AdTraceEnvironment.Sandbox);
adtraceConfig.setLogLevel(AdTraceLogLevel.Verbose);
adtraceConfig.setEventFailureDelegate(EventFailureCallback);
AdTrace.start(adtraceConfig);
// ...
public void EventFailureCallback(AdTraceEventFailure eventFailureData) {
// ...
}
برای Session های موفق:
// ...
AdTraceConfig adtraceConfig = new AdTraceConfig("{Your App Token}", AdTraceEnvironment.Sandbox);
adtraceConfig.setLogLevel(AdTraceLogLevel.Verbose);
adtraceConfig.setSessionSuccessDelegate(SessionSuccessCallback);
AdTrace.start(adtraceConfig);
// ...
public void SessionSuccessCallback (AdTraceSessionSuccess sessionSuccessData) {
// ...
}
برای Session های ناموفق:
// ...
AdTraceConfig adtraceConfig = new AdTraceConfig("{Your App Token}", AdTraceEnvironment.Sandbox);
adtraceConfig.setLogLevel(AdTraceLogLevel.Verbose);
adtraceConfig.setSessionFailureDelegate(SessionFailureCallback);
AdTrace.start(adtraceConfig);
// ...
public void SessionFailureCallback (AdTraceSessionFailure sessionFailureData) {
// ...
}
توابع Callback پس از تلاش SDK برای ارسال بسته به سرور فراخوانی میشوند. خلاصهای از ویژگیهای داده پاسخ Session:
string Messageپیام از سرور یا خطای لاگشده توسط SDKstring Timestamptimestamp از سرورstring Adidشناسه منحصربهفرد دستگاه ارائهشده توسط AdTraceDictionary<string, object> JsonResponseشیء JSON با پاسخ از سرور
هر دو شیء داده پاسخ Event شامل:
string EventTokenتوکن Event، اگر بسته ردیابیشده یک Event بودstring CallbackIdشناسه Callback سفارشی تنظیمشده روی شیء Event
هر دو شیء ناموفق Event و Session شامل:
bool WillRetryنشان میدهد آیا تلاشی برای ارسال مجدد بسته صورت میگیرد