AdSelectionManager
public
class
AdSelectionManager
extends Object
java.lang.Object | |
↳ | android.adservices.adsselect.AdSelectionManager |
توفّر "أداة إدارة اختيار الإعلانات" واجهات برمجة تطبيقات لحِزم التطبيقات وحِزم تطوير البرامج (SDK) لعرض الإعلانات من أجل تنفيذ عمليات اختيار الإعلانات بالإضافة إلى مرات ظهور التقارير.
ملخّص
الطرق المتاحة للجميع | |
---|---|
static
AdSelectionManager
|
get(Context context)
طريقة المصنع لإنشاء مثيل من AdSelectionManager. |
void
|
getAdSelectionData(GetAdSelectionDataRequest request, Executor executor, OutcomeReceiver<GetAdSelectionDataOutcome, Exception> receiver)
يجمع بيانات الجمهور المخصص من الجهاز. |
TestAdSelectionManager
|
getTestAdSelectionManager()
|
void
|
persistAdSelectionResult(PersistAdSelectionResultRequest request, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
الاحتفاظ بنتائج اختيار الإعلانات من جهة الخادم |
void
|
reportEvent(ReportEventRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
يتم إرسال إشعار إلى الخدمة بأنّ هناك حدث إعلان جديدًا يجب الإبلاغ عنه للإعلان الذي تم اختياره
من خلال عملية اختيار الإعلان التي تم تحديدها في الحقل |
void
|
reportImpression(ReportImpressionRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
يتم إرسال إشعار إلى الخدمة بأنّه هناك مرة ظهور جديدة يجب تسجيلها للإعلان الذي تم اختياره من خلال عملية اختيار الإعلان التي تم تحديدها في الحقل |
void
|
selectAds(AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
تختار إعلانًا من نتائج اختيارات الإعلانات التي تم عرضها سابقًا. |
void
|
selectAds(AdSelectionConfig adSelectionConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
ينفِّذ عملية اختيار الإعلانات على الجهاز لاختيار إعلان تجديد نشاط تسويقي لتطبيق المتّصل. |
void
|
updateAdCounterHistogram(UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, Executor executor, OutcomeReceiver<Object, Exception> outcomeReceiver)
يعدّل المدرجات التكرارية للعدّاد لإعلان سبق اختياره من خلال مكالمة إلى |
الطرق المكتسبة | |
---|---|
الطرق المتاحة للجميع
احصل على
public static AdSelectionManager get (Context context)
طريقة المصنع لإنشاء مثيل من AdSelectionManager.
المعلّمات | |
---|---|
context |
Context : لا يمكن استخدام Context لهذه القيمة باعتبارها null . |
الركلات المردودة | |
---|---|
AdSelectionManager |
مثيل AdSelectionManager
لا يمكن أن تكون هذه القيمة null . |
getAdSelectionData (بيانات تحديد الإعلانات)
public void getAdSelectionData (GetAdSelectionDataRequest request, Executor executor, OutcomeReceiver<GetAdSelectionDataOutcome, Exception> receiver)
يجمع بيانات الجمهور المخصص من الجهاز. يتم إرجاع كائن ثنائي كبير مشفّر ومشفّر لإرساله إلى خوادم المزاد من أجل اختيار الإعلان. لمزيد من التفاصيل، يُرجى الانتقال إلى شرح خدمات عروض الأسعار والمزادات.
يجب أن تتضمّن إعلانات الجمهور المخصّص ad_render_id
لتكون مؤهّلة لجمعها.
راجِع AdSelectionManager#persistAdSelectionResult
لمعرفة كيفية معالجة نتائج اختيار الإعلان الذي يتم تنفيذه من جهة الخادم باستخدام كائن ثنائي كبير تم إنشاؤه من خلال واجهة برمجة التطبيقات هذه.
يمرّر المتلقّي المخرجات، ما يعرض خطأ GetAdSelectionDataOutcome
للتشغيل بنجاح أو أنّ Exception
يتضمّن نوع الاستثناء الذي يتم طرحه ورسالة الخطأ المقابلة.
إذا تمّ عرض IllegalArgumentException
، يرجع ذلك إلى وسيطة إدخال غير صالحة
تلقّتها واجهة برمجة التطبيقات لتشغيل اختيار الإعلان.
إذا تم عرض IllegalStateException
مع ظهور رسالة الخطأ "تعذُّر خدمات
اختيار الإعلانات"، يكون ذلك بسبب تعذُّر داخلي في خدمة اختيار الإعلانات.
إذا تمّ طرح TimeoutException
، يحدث ذلك عند انقضاء مهلة أثناء تقديم عروض الأسعار أو تسجيل النقاط أو عملية الاختيار الشاملة للعثور على الإعلان الفائز.
إذا تم طرح LimitExceededException
، يحدث ذلك عندما تتجاوز حزمة الاتصال حدود المعدّل المسموح به ويتم تقييدها.
إذا تم طرح SecurityException
، يحدث ذلك عندما يكون المتصل غير مصرّح له أو لا يتم طلب الإذن.
يتطلب AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
المعلّمات | |
---|---|
request |
GetAdSelectionDataRequest : لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
المستخدَمة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
في تطبيقك، يمكنك استخدام
Context.getMainExecutor() .
وبخلاف ذلك، يمكنك تقديم Executor توجّهها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : لا يمكن أن تكون هذه القيمة null . |
getTestAdSelectionManager
public TestAdSelectionManager getTestAdSelectionManager ()
الركلات المردودة | |
---|---|
TestAdSelectionManager |
لا يمكن أن تكون هذه القيمة null . |
مواصلة AdSelectionResult
public void persistAdSelectionResult (PersistAdSelectionResultRequest request, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
الاحتفاظ بنتائج اختيار الإعلانات من جهة الخادم لمزيد من التفاصيل، يُرجى الانتقال إلى شرح خدمات عروض الأسعار والمزادات.
راجِع AdSelectionManager#getAdSelectionData
لمعرفة كيفية إنشاء كائن ثنائي كبير مشفَّر لتشغيل اختيار إعلان على جهة الخادم.
يمرِّر المتلقّي المخرجات، ما يعرض خطأ AdSelectionOutcome
للتشغيل الناجح، أو يعرض Exception
نوع الاستثناء الذي يتم طرحه ورسالة الخطأ المقابلة.
إذا تمّ عرض IllegalArgumentException
، يرجع ذلك إلى وسيطة إدخال غير صالحة
تلقّتها واجهة برمجة التطبيقات لتشغيل اختيار الإعلان.
إذا تم عرض IllegalStateException
مع ظهور رسالة الخطأ "تعذُّر خدمات
اختيار الإعلانات"، يكون ذلك بسبب تعذُّر داخلي في خدمة اختيار الإعلانات.
إذا تمّ طرح TimeoutException
، يحدث ذلك عند انقضاء مهلة أثناء تقديم عروض الأسعار أو تسجيل النقاط أو عملية الاختيار الشاملة للعثور على الإعلان الفائز.
إذا تم طرح LimitExceededException
، يحدث ذلك عندما تتجاوز حزمة الاتصال حدود المعدّل المسموح به ويتم تقييدها.
إذا تم طرح SecurityException
، يحدث ذلك عندما يكون المتصل غير مصرّح له أو لا يتم طلب الإذن.
يتطلب AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
المعلّمات | |
---|---|
request |
PersistAdSelectionResultRequest : لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
المستخدَمة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
في تطبيقك، يمكنك استخدام
Context.getMainExecutor() .
وبخلاف ذلك، يمكنك تقديم Executor توجّهها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : لا يمكن أن تكون هذه القيمة null . |
حدث التقرير
public void reportEvent (ReportEventRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
يتم إرسال إشعار إلى الخدمة بأنّ هناك حدث إعلان جديدًا يجب الإبلاغ عنه للإعلان الذي تم اختياره
من خلال عملية اختيار الإعلان التي تم تحديدها في الحقل adSelectionId
. ويشير حدث الإعلان إلى أي
إعلان مرتبط بالسمة adSelectionId
المحدّدة. وما من ضمانة بشأن
موعد الإبلاغ عن حدث الإعلان. قد يتأخر إعداد تقارير الفعالية ويمكن تجميع التقارير
بشكل مجمّع.
باستخدام ReportEventRequest#getKey()
، ستجلب الخدمة ملف reportingUri
الذي تم تسجيله في registerAdBeacon
. يمكنك الاطّلاع على مستندات reportImpression(ReportImpressionRequest, Executor, OutcomeReceiver)
للحصول على مزيد من التفاصيل حول registerAdBeacon
. بعد ذلك، سترفق الخدمة
السمة ReportEventRequest#getData()
بنص الطلب الخاص بطلب POST
وترسل الطلب. سيحتوي نص طلب POST على content-type
من text/plain
، وسيتم إرسال البيانات خلال charset=UTF-8
.
يتم تمرير النتيجة من خلال المتلقّي، ما يؤدي إلى عرض قيمة Object
فارغة
للتشغيل الناجح أو عرض Exception
نوع الاستثناء الذي يتم طرحه ورسالة الخطأ المقابلة.
وإذا تمّ عرض IllegalArgumentException
، يرجع ذلك إلى وسيطة إدخال غير صالحة
تلقّتها واجهة برمجة التطبيقات للإبلاغ عن حدث الإعلان.
إذا تم عرض IllegalStateException
مع ظهور رسالة الخطأ "تعذُّر خدمات
اختيار الإعلانات"، يكون ذلك بسبب تعذُّر داخلي في خدمة اختيار الإعلانات.
إذا تم طرح LimitExceededException
، يحدث ذلك عندما تتجاوز حزمة الاتصال حدود المعدّل المسموح به ويتم تقييدها.
إذا تم طرح SecurityException
، يحدث ذلك عندما يكون المتصل غير مصرّح له أو لا يتم طلب الإذن.
وسيتم الإبلاغ عن الأحداث مرة واحدة على الأكثر باعتبارها محاولة لبذل قصارى جهدك.
يتطلب AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
المعلّمات | |
---|---|
request |
ReportEventRequest : لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : لا يمكن أن تكون هذه القيمة null . |
receiver |
OutcomeReceiver : لا يمكن أن تكون هذه القيمة null . |
تقرير ظهور
public void reportImpression (ReportImpressionRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
يتم إرسال إشعار إلى الخدمة بأنّه هناك مرة ظهور جديدة يجب تسجيلها للإعلان الذي تم اختياره من خلال عملية اختيار الإعلان التي تم تحديدها في الحقل adSelectionId
. وما مِن ضمانة بشأن وقت
الإبلاغ عن مرة الظهور. قد يتأخر الإبلاغ عن مرات الظهور ويمكن تجميع التقارير بشكل مجمّع.
لاحتساب عنوان URL لتقرير البائع الفائز، تجلب الخدمة منطق JavaScript للبائع من AdSelectionConfig#getDecisionLogicUri()
في ReportImpressionRequest.getAdSelectionConfig()
. بعد ذلك، تنفِّذ الخدمة إحدى
الوظائف الواردة في نص JavaScript للبائع والتي تُسمى reportResult
، وتوفّر إشارات على الجهاز وكذلك
ReportImpressionRequest#getAdSelectionConfig()
كمَعلمات إدخال.
تعريف دالة reportResult
هو:
function reportResult(ad_selection_config, render_url, bid, contextual_signals) {
return { 'status': status, 'results': {'signals_for_buyer': signals_for_buyer,
'reporting_url': reporting_url } }; }
لاحتساب عنوان URL لإعداد تقارير المشترين الفائزين، تجلب الخدمة منطق JavaScript للمشتري
الفائز من خلال عملية CustomAudience.getBiddingLogicUri()
للمشتري. بعد ذلك، تنفّذ الخدمة إحدى الدوالّ المتوفّرة في JavaScript للمشتري باسم reportWin
، ما يوفّر إشارات على الجهاز، ويتم احتساب signals_for_buyer
من خلال reportResult
، وحقول معيّنة من ReportImpressionRequest#getAdSelectionConfig()
كمَعلمات إدخال.
تعريف دالة reportWin
هو:
function reportWin(ad_selection_signals, per_buyer_signals, signals_for_buyer,
contextual_signals, custom_audience_reporting_signals) { return {'status': 0, 'results':
{'reporting_url': reporting_url } }; }
بالإضافة إلى ذلك، يمكن للمشترين والبائعين التسجيل لتلقّي تقارير حول فعاليات إعلانية معيّنة. لإجراء ذلك، يمكن استدعاء الوظيفة registerAdBeacon
المتوفّرة في reportWin
وreportResult
للمشترين والبائعين على التوالي.
تعريف دالة registerBeacon
هو:
function registerAdBeacon(beacons)
، حيث يتم استخدام beacons
في قاموس السلسلة إلى أزواج السلاسل
بالنسبة إلى كل حدث إعلاني يهتم المشتري أو البائع بالتقارير المتعلقة به، عليه إضافة زوج event_key
: event_reporting_uri
إلى الإملاء beacons
، حيث يمثّل event_key
معرّفًا لهذا الحدث المحدّد. يجب أن يتطابق event_key
مع
ReportEventRequest#getKey()
عند استدعاء حزمة SDK reportEvent(ReportEventRequest, Executor, OutcomeReceiver)
. بالإضافة إلى ذلك، يجب تحليل كل event_reporting_uri
بشكل صحيح إلى Uri
. سيكون هذا هو الحقل Uri
الذي يتم الإبلاغ عنه عندما تستدعي حزمة تطوير البرامج reportEvent(ReportEventRequest, Executor, OutcomeReceiver)
.
عندما يضيف المشتري أو البائع جميع عمليات الإقران التي يريد تلقّي الفعاليات المرتبطة بها، يمكنه
استدعاء registerAdBeacon(beacons)
، حيث يشير beacons
إلى اسم الإملاء الذي
أضاف الأزواج إليه.
سيرمي registerAdBeacon
علامة TypeError
في الحالات التالية:
- تم الاتصال بـ
registerAdBeacon
أكثر من مرة. إذا ظهر هذا الخطأ في reportWin/reportResult، سيتم تسجيل المجموعة الأصلية من الأزواج. - لا يحتوي
registerAdBeacon
على وسيطة إملاء واحدة بالضبط. - محتوى وسيطة الإملاء 1 ليس جميع أزواج
String: String
.
يتم تمرير المخرجات من خلال receiver
، والتي تعرض قيمة Object
فارغة
لتشغيلها بنجاح، أو تعرض Exception
نوع الاستثناء الذي يتم طرحه ورسالة الخطأ المقابلة.
وإذا تمّ عرض IllegalArgumentException
، يرجع ذلك إلى وسيطة إدخال غير صالحة
تلقّتها واجهة برمجة التطبيقات للإبلاغ عن مرّة الظهور.
إذا تم عرض IllegalStateException
مع ظهور رسالة الخطأ "تعذُّر خدمات
اختيار الإعلانات"، يكون ذلك بسبب تعذُّر داخلي في خدمة اختيار الإعلانات.
إذا تم طرح LimitExceededException
، يحدث ذلك عندما تتجاوز حزمة الاتصال حدود المعدّل المسموح به ويتم تقييدها.
إذا تم طرح SecurityException
، يحدث ذلك عندما يكون المتصل غير مصرّح له أو لا يتم طلب الإذن.
وسيتم الإبلاغ عن مرات الظهور مرة واحدة على الأكثر باعتبارها محاولة لأفضل جهد ممكن.
يتطلب AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
المعلّمات | |
---|---|
request |
ReportImpressionRequest : لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : لا يمكن أن تكون هذه القيمة null . |
receiver |
OutcomeReceiver : لا يمكن أن تكون هذه القيمة null . |
selectAds
public void selectAds (AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
تختار إعلانًا من نتائج اختيارات الإعلانات التي تم عرضها سابقًا.
يتم توفير الإدخال adSelectionFromOutcomesConfig
من خلال حزمة تطوير البرامج (SDK) لعرض الإعلانات، ويتم نقل العنصر AdSelectionFromOutcomesConfig
من خلال طلب الصنف Binder. لهذا السبب، يرتبط الحجم الإجمالي لهذه العناصر بقيود IPC لنظام التشغيل Android. في حال تعذُّر نقل
AdSelectionFromOutcomesConfig
، سيتم عرض علامة TransactionTooLargeException
.
يمرِّر المتلقّي المخرجات، ما يعرض خطأ AdSelectionOutcome
للتشغيل الناجح، أو يعرض Exception
نوع الاستثناء الذي يتم طرحه ورسالة الخطأ المقابلة.
يحتوي إدخال adSelectionFromOutcomesConfig
على:
- يجب أن يكون
Seller
مسجَّلاً في "AdTechIdentifier
". وإلا، سيتم طرحIllegalStateException
. - يجب أن يكون
List of ad selection ids
متوفّرًا ويأتي من مكالماتselectAds(AdSelectionConfig, Executor, OutcomeReceiver)
صادرة من التطبيق نفسه. بخلاف ذلك، سيزيدIllegalArgumentException
للتحقق من صحة الإدخال من أرقام تعريف اختيار الإعلانات التي تنتهك السياسات. Selection logic URI
التي يمكن أن تتّبع إما HTTPS أو المخططات المصمَّمة مسبقًا لتحديد الإعلانات.وإذا كان معرّف الموارد المنتظم (URI) يتّبع مخطط HTTPS، يجب أن يتطابق المضيف مع
seller
. وإلا، سيتم طرحIllegalArgumentException
.إنّ معرّفات الموارد المنتظمة (URI) المنشأة مسبقًا هي طريقة لاستبدال المنطق العام سابق الإنشاء برموز JavaScript المطلوبة لـ
selectOutcome
. يتضمّن معرّف الموارد المنتظم (URI) المُعدّ مسبقًا لنقطة النهاية هذه المعلومات التالية:ad-selection-prebuilt://ad-selection-from-outcomes/<name>?<script-generation-parameters>
إذا تم تمرير معرّف موارد منتظم (URI) غير متوافق مع الإعداد المسبق أو إذا أوقفت الخدمة ميزة معرّف الموارد المنتظم (URI) سابق الإنشاء، سيتم طرح
IllegalArgumentException
.يمكنك الانتقال إلى
AdSelectionFromOutcomesConfig.Builder#setSelectionLogicUri
للاطّلاع على<name>
المتوافقة و<script-generation-parameters>
المطلوبة.
إذا تمّ عرض IllegalArgumentException
، يرجع ذلك إلى وسيطة إدخال غير صالحة
تلقّتها واجهة برمجة التطبيقات لتشغيل اختيار الإعلان.
إذا تم عرض IllegalStateException
مع ظهور رسالة الخطأ "تعذُّر خدمات
اختيار الإعلانات"، يكون ذلك بسبب تعذُّر داخلي في خدمة اختيار الإعلانات.
إذا تمّ طرح TimeoutException
، يحدث ذلك عند انقضاء مهلة أثناء تقديم عروض الأسعار أو تسجيل النقاط أو عملية الاختيار الشاملة للعثور على الإعلان الفائز.
إذا تم طرح LimitExceededException
، يحدث ذلك عندما تتجاوز حزمة الاتصال حدود المعدّل المسموح به ويتم تقييدها.
إذا تم طرح SecurityException
، يحدث ذلك عندما يكون المتصل غير مصرّح له أو لا يتم طلب الإذن.
يتطلب AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
المعلّمات | |
---|---|
adSelectionFromOutcomesConfig |
AdSelectionFromOutcomesConfig : لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
المستخدَمة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
في تطبيقك، يمكنك استخدام
Context.getMainExecutor() .
وبخلاف ذلك، يمكنك تقديم Executor توجّهها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : لا يمكن أن تكون هذه القيمة null . |
selectAds
public void selectAds (AdSelectionConfig adSelectionConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
ينفِّذ عملية اختيار الإعلانات على الجهاز لاختيار إعلان تجديد نشاط تسويقي لتطبيق المتّصل.
يتم توفير الإدخال adSelectionConfig
من خلال حزمة تطوير البرامج (SDK) لعرض الإعلانات، ويتم نقل العنصر AdSelectionConfig
من خلال طلب الصنف Binder. لهذا السبب، يرتبط الحجم الإجمالي لهذه العناصر بقيود IPC لنظام التشغيل Android. في حال تعذُّر نقل AdSelectionConfig
، سيتم حظر TransactionTooLargeException
.
يحتوي الإدخال adSelectionConfig
على Decision Logic Uri
يمكن أن تتّبع
المخططات HTTPS أو المخططات المصممة مسبقًا لتحديد الإعلان.
وإذا كان معرّف الموارد المنتظم (URI) يتّبع مخطط HTTPS، يجب أن يتطابق المضيف مع seller
. وبخلاف ذلك،
سيتم طرح IllegalArgumentException
.
إنّ معرّفات الموارد المنتظمة (URI) المنشأة مسبقًا هي طريقة لاستبدال المنطق العام سابق الإنشاء برموز JavaScript المطلوبة لـ scoreAds
. يتضمّن معرّف الموارد المنتظم (URI) المُعدّ مسبقًا لنقطة النهاية هذه المعلومات التالية:
ad-selection-prebuilt://ad-selection/<name>?<script-generation-parameters>
إذا تم تمرير معرّف موارد منتظم (URI) غير متوافق مع الإعداد المسبق أو إذا أوقفت الخدمة ميزة معرّف الموارد المنتظم (URI) سابق الإنشاء، سيتم طرح IllegalArgumentException
.
يمكنك الانتقال إلى AdSelectionConfig.Builder#setDecisionLogicUri
للاطّلاع على <name>
المتوافقة و<script-generation-parameters>
المطلوبة.
يمرِّر المتلقّي المخرجات، ما يعرض خطأ AdSelectionOutcome
للتشغيل الناجح، أو يعرض Exception
نوع الاستثناء الذي يتم طرحه ورسالة الخطأ المقابلة.
إذا تمّ عرض IllegalArgumentException
، يرجع ذلك إلى وسيطة إدخال غير صالحة
تلقّتها واجهة برمجة التطبيقات لتشغيل اختيار الإعلان.
إذا تم عرض IllegalStateException
مع ظهور رسالة الخطأ "تعذُّر خدمات
اختيار الإعلانات"، يكون ذلك بسبب تعذُّر داخلي في خدمة اختيار الإعلانات.
إذا تمّ طرح TimeoutException
، يحدث ذلك عند انقضاء مهلة أثناء تقديم عروض الأسعار أو تسجيل النقاط أو عملية الاختيار الشاملة للعثور على الإعلان الفائز.
إذا تم طرح LimitExceededException
، يحدث ذلك عندما تتجاوز حزمة الاتصال حدود المعدّل المسموح به ويتم تقييدها.
إذا تم طرح SecurityException
، يحدث ذلك عندما يكون المتصل غير مصرّح له أو لا يتم طلب الإذن.
يتطلب AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
المعلّمات | |
---|---|
adSelectionConfig |
AdSelectionConfig : لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
المستخدَمة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
في تطبيقك، يمكنك استخدام
Context.getMainExecutor() .
وبخلاف ذلك، يمكنك تقديم Executor توجّهها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : لا يمكن أن تكون هذه القيمة null . |
updateAdCounterHistogram
public void updateAdCounterHistogram (UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, Executor executor, OutcomeReceiver<Object, Exception> outcomeReceiver)
يعدّل المدرجات التكرارية للعدّاد لإعلان سبق اختياره من خلال مكالمة إلى selectAds(android.adservices.adselection.AdSelectionConfig, java.util.concurrent.Executor, android.os.OutcomeReceiver)
.
تُستخدَم المدرّجات التكرارية المقابلة في اختيار الإعلانات لإعداد خيار فلترة تحديد عدد مرات الظهور للإعلانات المرشحة، حيث تتم إزالة الإعلانات التي تم بلوغ الحد الأقصى لعدد مرات الظهور أو تجاوزها من عملية تقديم عروض الأسعار أثناء اختيار الإعلان.
لا يمكن تعديل المدرجات التكرارية المضادة إلا للإعلانات المحدّدة من خلال adSelectionId
المحدّد الذي تم عرضه من خلال مكالمة حديثة إلى FLEDGE من تطبيق المتصل نفسه.
يتمّ عرض SecurityException
عبر outcomeReceiver
في الحالات التالية:
- لم يذكر التطبيق الأذونات الصحيحة في ملف البيان الخاص به، أو
- إنّ التطبيق أو الكيان المحدّد في
callerAdTechIdentifier
غير مصرَّح له باستخدام واجهة برمجة التطبيقات.
IllegalStateException
عبر outcomeReceiver
إذا لم تكن المكالمة واردة من تطبيق به نشاط في المقدّمة.
يتم عرض LimitExceededException
من خلال outcomeReceiver
إذا تجاوز الطلب نطاق واجهة برمجة التطبيقات الخاص بتطبيق الاتصال.
في جميع حالات التعذُّر الأخرى، ستعرض outcomeReceiver
قيمة Object
فارغة. يُرجى العِلم أنّه لن تتم إعادة إرسال الأخطاء الداخلية عن طريق استثناء
وذلك لحماية خصوصية المستخدم.
يتطلب AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
المعلّمات | |
---|---|
updateAdCounterHistogramRequest |
UpdateAdCounterHistogramRequest : لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
المستخدَمة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
في تطبيقك، يمكنك استخدام
Context.getMainExecutor() .
وبخلاف ذلك، يمكنك تقديم Executor توجّهها إلى سلسلة محادثات مناسبة. |
outcomeReceiver |
OutcomeReceiver : لا يمكن أن تكون هذه القيمة null . |