أرباح الإعلانات على مستوى مرّات الظهور

اختيار النظام الأساسي: Android iOS Unity

عند حدوث مرّة ظهور، توفّر حزمة SDK لإعلانات Google على الأجهزة الجوّالة بيانات أرباح الإعلانات المرتبطة بمرّة الظهور هذه. يمكنك استخدام البيانات لاحتساب القيمة الدائمة للمستخدم أو إعادة توجيه البيانات إلى الأنظمة الأخرى ذات الصلة.

يهدف هذا الدليل إلى مساعدتك في تنفيذ عملية تسجيل بيانات أرباح الإعلانات على مستوى مرّات الظهور في مشروع Unity.

المتطلبات الأساسية

تنفيذ معالج أحداث مدفوعة

يحتوي كل شكل من أشكال الإعلانات على OnAdPaid حدث. أثناء دورة حياة حدث الإعلان، تراقب حزمة SDK لإعلانات Google على الأجهزة الجوّالة أحداث مرّات الظهور وتستدعي معالجًا باستخدام AdValue يمثّل القيمة المكتسبة.

يتناول المثال التالي الأحداث المدفوعة في "إعلان مقابل مكافأة":

private void LoadRewardedAd()
{
   // Send the request to load the ad.
   AdRequest adRequest = new AdRequest();
   RewardedAd.Load("AD_UNIT_ID", adRequest, (RewardedAd rewardedAd, LoadAdError error) =>
   {
      // If the operation failed with a reason.
      if (error != null)
      {
         Debug.LogError("Rewarded ad failed to load an ad with error : " + error);
         return;
      }

      rewardedAd.OnAdPaid += this.HandleAdPaidEvent;
   });
}

public void HandleAdPaidEvent(AdValue adValue)
{
    // TODO: Send the impression-level ad revenue information to your
    // preferred analytics server directly within this callback.

    long valueMicros = adValue.Value;
    string currencyCode = adValue.CurrencyCode;
    PrecisionType precision = adValue.Precision;

    ResponseInfo responseInfo = rewardedAd.GetResponseInfo();
    string responseId = responseInfo.GetResponseId();

    AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
    string adSourceId = loadedAdapterResponseInfo.AdSourceId;
    string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
    string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
    string adSourceName = loadedAdapterResponseInfo.AdSourceName;
    string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
    long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
    Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;

    Dictionary<string, string> extras = responseInfo.GetResponseExtras();
    string mediationGroupName = extras["mediation_group_name"];
    string mediationABTestName = extras["mediation_ab_test_name"];
    string mediationABTestVariant = extras["mediation_ab_test_variant"];
}

تحديد اسم مصدر إعلان حدث مخصّص

بالنسبة إلى مصادر الإعلانات المستندة إلى الأحداث المخصّصة، تمنحك السمة AdSourceName اسم مصدر الإعلان Custom Event. في حال استخدام أحداث مخصّصة متعدّدة، لن يكون اسم مصدر الإعلان دقيقًا بما يكفي للتمييز بين الأحداث المخصّصة المتعدّدة. للعثور على حدث مخصّص محدّد، اتّبِع الخطوات التالية:

  1. احصل على السمة AdapterClassName.
  2. اضبط اسمًا فريدًا لمصدر الإعلان.

يضبط المثال التالي اسمًا فريدًا لمصدر الإعلان لحدث مخصّص:

private string GetAdSourceName(AdapterResponseInfo loadedAdapterResponseInfo)
{
    if (loadedAdapterResponseInfo == null)
    {
        return string.Empty;
    }

    string adSourceName = loadedAdapterResponseInfo.AdSourceName;

    if (adSourceName == "Custom Event")
    {

        #if UNITY_ANDROID
            if (loadedAdapterResponseInfo.AdapterClassName ==
                "com.google.ads.mediation.sample.customevent.SampleCustomEvent")
            {
                adSourceName = "Sample Ad Network (Custom Event)";
            }
        #elif UNITY_IPHONE
            if (loadedAdapterResponseInfo.AdapterClassName == "SampleCustomEvent")
            {
                adSourceName = "Sample Ad Network (Custom Event)";
            }
        #endif

    }
    return adSourceName;
}

لمزيد من المعلومات حول مصدر الإعلان الفائز، اطّلِع على استرداد معلومات حول استجابة الإعلان.

الدمج مع شركاء إحالة التطبيقات (AAP)

للاطّلاع على التفاصيل الكاملة حول إعادة توجيه بيانات أرباح الإعلانات إلى منصات الإحصاءات، يُرجى الرجوع إلى دليل الشريك:

Partner SDK
Adjust
AppsFlyer
Singular
Tenjin

أفضل الممارسات المتعلّقة بالتنفيذ

  • اضبط حدث OnPaidEvent مباشرةً بعد إنشاء عنصر الإعلان أو الحصول على إذن الوصول إليه، وقبل عرض الإعلان بالتأكيد. يضمن ذلك عدم تفويت أي عمليات ردّ الاتصال.
  • أرسِل معلومات إيرادات الإعلانات على مستوى مرّات الظهور إلى خادم الإحصاءات المفضّل لديك فورًا في معالج OnPaidEvent. يضمن ذلك عدم حذف أيّ من عمليات معاودة الاتصال عن طريق الخطأ وتجنُّب حدوث تناقضات في البيانات.

AdValue

AdValue هي فئة تمثّل القيمة النقدية التي تم تحقيقها من إعلان، بما في ذلك رمز العملة الخاص بالقيمة ونوع الدقة المرمّز على النحو التالي.

AdValue.PrecisionType الوصف
Unknown قيمة إعلان غير معروفة. يتم عرض هذا الرمز عند تفعيل ميزة إرسال بيانات LTV، ولكن لا تتوفّر بيانات كافية.
Estimated هي قيمة إعلان مقدّرة من بيانات مجمّعة.
PublisherProvided قيمة الإعلان التي قدّمها الناشر، مثل قيم التكلفة اليدوية لكل ألف ظهور في مجموعة توسّط
Precise تمثّل هذه السمة القيمة الدقيقة لهذا الإعلان.

في حال التوسّط، تحاول AdMob تقديم Estimatedقيمة لمصادر الإعلانات المحسَّنة. بالنسبة إلى مصادر الإعلانات غير المحسَّنة، أو في الحالات التي لا تتوفّر فيها بيانات مجمَّعة كافية لتقديم تقدير مفيد، يتم عرض القيمة PublisherProvided.

اختبار مرّات الظهور من مصادر الإعلانات المستندة إلى عروض الأسعار

بعد حدوث حدث إيرادات الإعلان على مستوى مرّة الظهور لمصدر إعلان يستخدِم عروض الأسعار من خلال طلب اختباري، لن تتلقّى سوى القيم التالية:

  • Unknown: يشير إلى نوع الدقة.
  • 0: يشير إلى قيمة الإعلان.

في السابق، ربما ظهر لك نوع الدقة كقيمة أخرى غير Unknown وقيمة إعلان أكبر من 0.

للحصول على تفاصيل حول إرسال طلب إعلان تجريبي، راجِع مقالة تفعيل الأجهزة التجريبية.