AdSelectionManager

public class AdSelectionManager
extends Object

java.lang.Object
android.adservices.adselection.AdSelectionManager


מערכת AdSelection Manager מספקת ממשקי API לאפליקציות ולערכות SDK של מודעות כדי להריץ תהליכי בחירת מודעות, חשיפות בדוח.

סיכום

שיטות ציבוריות

static AdSelectionManager get(Context context)

שיטת היצרן ליצירת מכונה של AdSelectionManager.

void getAdSelectionData(GetAdSelectionDataRequest request, Executor executor, OutcomeReceiver<GetAdSelectionDataOutcomeException> receiver)

איסוף נתונים של קהלים בהתאמה אישית מהמכשיר.

TestAdSelectionManager getTestAdSelectionManager()
void persistAdSelectionResult(PersistAdSelectionResultRequest request, Executor executor, OutcomeReceiver<AdSelectionOutcomeException> receiver)

שומר על התוצאות של בחירת המודעות מהצד השרת.

void reportEvent(ReportEventRequest request, Executor executor, OutcomeReceiver<ObjectException> receiver)

השירות מודיע לשירות על אירוע מודעה חדש שעליו לדווח עבור המודעה שנבחרה על ידי הפעלה של בחירת מודעות שזוהתה על ידי adSelectionId.

void reportImpression(ReportImpressionRequest request, Executor executor, OutcomeReceiver<ObjectException> receiver)

מודיע לשירות על חשיפה חדשה לדווח עבור המודעה שנבחרה על ידי הפעלה של בחירת מודעות שזוהתה על ידי adSelectionId.

void selectAds(AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, Executor executor, OutcomeReceiver<AdSelectionOutcomeException> receiver)

המערכת בוחרת מודעה מתוך התוצאות של בחירות המודעות שהופעלו בעבר.

void selectAds(AdSelectionConfig adSelectionConfig, Executor executor, OutcomeReceiver<AdSelectionOutcomeException> receiver)

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

void updateAdCounterHistogram(UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, Executor executor, OutcomeReceiver<ObjectException> outcomeReceiver)

עדכון ההיסטוגרמות הנגדיות של מודעה שנבחרה קודם לכן על ידי קריאה ל-selectAds(android.adservices.adselection.AdSelectionConfig, java.util.concurrent.Executor, android.os.OutcomeReceiver).

שיטות שעברו בירושה

שיטות ציבוריות

מקבלים

public static AdSelectionManager get (Context context)

שיטת היצרן ליצירת מכונה של AdSelectionManager.

פרמטרים
context Context: Context לשימוש הערך הזה לא יכול להיות null.

החזרות
AdSelectionManager מופע של AdSelectionManager הערך הזה לא יכול להיות null.

getAdSelectionData

public void getAdSelectionData (GetAdSelectionDataRequest request, 
                Executor executor, 
                OutcomeReceiver<GetAdSelectionDataOutcomeException> receiver)

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

כדי שאפשר יהיה לאסוף מודעות קהל בהתאמה אישית, הן צריכות לכלול ad_render_id.

בכתובת AdSelectionManager#persistAdSelectionResult מוסבר איך לעבד את התוצאות של בחירת המודעות מופעלת בצד השרת עם ה-blob שנוצר על ידי ה-API הזה.

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

אם זורקת את IllegalArgumentException, היא נגרמה על ידי ארגומנט קלט לא חוקי שה-API קיבל כדי להפעיל את בחירת המודעות.

אם מוצגת IllegalStateException עם הודעת השגיאה "כשל בבחירת AdSelection" השירותים שלנו.", היא נובעת מכשל פנימי בשירות בחירת המודעות.

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

אם זורקת את LimitExceededException, היא מתרחשת כשחבילת השיחה חורג מהגבלת הקצב של יצירת הבקשות המותרות ומתבצעת ויסות נתונים (throttle).

אם זורקת את ה-SecurityException, זה קורה כשהמתקשר לא מורשה או לא התבקשת.
נדרש AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

פרמטרים
request GetAdSelectionDataRequest: הערך הזה לא יכול להיות null.

executor Executor: הערך הזה לא יכול להיות null. אירועי קריאה חוזרת ואירועי האזנה נשלחים באמצעות Executor, דרך קלה לקבוע איזה שרשור בשימוש. כדי לשלוח אירועים דרך ה-thread הראשי אפשר להשתמש Context.getMainExecutor() אם לא, צריך לציין Executor ששולח לשרשור מתאים.

receiver OutcomeReceiver: הערך הזה לא יכול להיות null.

getTestAdSelectionManager

public TestAdSelectionManager getTestAdSelectionManager ()

החזרות
TestAdSelectionManager הערך הזה לא יכול להיות null.

offsetAdSelectionתוצאה

public void persistAdSelectionResult (PersistAdSelectionResultRequest request, 
                Executor executor, 
                OutcomeReceiver<AdSelectionOutcomeException> receiver)

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

בAdSelectionManager#getAdSelectionData מוסבר איך ליצור blob מוצפן לצורך להריץ בחירת מודעות בצד השרת.

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

אם זורקת את IllegalArgumentException, היא נגרמה על ידי ארגומנט קלט לא חוקי שה-API קיבל כדי להפעיל את בחירת המודעות.

אם מוצגת IllegalStateException עם הודעת השגיאה "כשל בבחירת AdSelection" השירותים שלנו.", היא נובעת מכשל פנימי בשירות בחירת המודעות.

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

אם זורקת את LimitExceededException, היא מתרחשת כשחבילת השיחה חורג מהגבלת הקצב של יצירת הבקשות המותרות ומתבצעת ויסות נתונים (throttle).

אם זורקת את ה-SecurityException, זה קורה כשהמתקשר לא מורשה או לא נדרשת הרשאה.
נדרש AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

פרמטרים
request PersistAdSelectionResultRequest: הערך הזה לא יכול להיות null.

executor Executor: הערך הזה לא יכול להיות null. אירועי קריאה חוזרת ואירועי האזנה נשלחים באמצעות Executor, דרך קלה לקבוע איזה שרשור בשימוש. כדי לשלוח אירועים דרך ה-thread הראשי אפשר להשתמש Context.getMainExecutor() אם לא, צריך לציין Executor ששולח לשרשור מתאים.

receiver OutcomeReceiver: הערך הזה לא יכול להיות null.

reportEvent

public void reportEvent (ReportEventRequest request, 
                Executor executor, 
                OutcomeReceiver<ObjectException> receiver)

השירות מודיע לשירות על אירוע מודעה חדש שעליו לדווח עבור המודעה שנבחרה על ידי הפעלה של בחירת מודעות שזוהתה על ידי adSelectionId. אירוע מודעה הוא כל אירוע קורה למודעה שמשויכת ל-adSelectionId הנתון. אין ערובה לגבי שבו ידווח אירוע המודעה. עשוי להיות עיכוב בדיווח על האירועים והדוחות מרובה.

באמצעות ReportEventRequest#getKey(), השירות יאחזר את reportingUri שרשומה ב-registerAdBeacon. מידע נוסף לגבי registerAdBeacon זמין בתיעוד של reportImpression(ReportImpressionRequest, Executor, OutcomeReceiver). לאחר מכן השירות יצרף את המחרוזת ReportEventRequest#getData() לגוף הבקשה של בקשת POST וגם לשלוח את הבקשה. בגוף בקשת ה-POST יופיע content-type מסוג text/plain, והנתונים יועברו ב-charset=UTF-8.

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

אם זורקת את IllegalArgumentException, היא נגרמה על ידי ארגומנט קלט לא חוקי ה-API שקיבל כדי לדווח על אירוע המודעה.

אם מוצגת IllegalStateException עם הודעת השגיאה "כשל בבחירת AdSelection" השירותים שלנו.", היא נובעת מכשל פנימי בשירות בחירת המודעות.

אם זורקת את LimitExceededException, היא מתרחשת כשחבילת השיחה חורג מהגבלת הקצב של יצירת הבקשות המותרות ומתבצעת ויסות נתונים (throttle).

אם זורקת את ה-SecurityException, זה קורה כשהמתקשר לא מורשה או לא התבקשת.

הדיווח על האירועים יתבצע פעם אחת לכל היותר כניסיון הטוב ביותר.
נדרש AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

פרמטרים
request ReportEventRequest: הערך הזה לא יכול להיות null.

executor Executor: הערך הזה לא יכול להיות null.

receiver OutcomeReceiver: הערך הזה לא יכול להיות null.

חשיפת הדוח

public void reportImpression (ReportImpressionRequest request, 
                Executor executor, 
                OutcomeReceiver<ObjectException> receiver)

מודיע לשירות על חשיפה חדשה לדווח עבור המודעה שנבחרה על ידי הפעלה של בחירת מודעות שזוהתה על ידי adSelectionId. אין לנו אפשרות להבטיח מתי תדווח. עשוי להיות עיכוב בדיווח על חשיפות והדוחות עשויים להיות מרובה.

כדי לחשב את כתובת ה-URL הזוכה לדיווח על בית העסק, השירות מאחזר את קוד ה-JavaScript של בית העסק. מ-AdSelectionConfig#getDecisionLogicUri() שנמצא ב-ReportImpressionRequest.getAdSelectionConfig(). לאחר מכן, השירות מבצע אחת שקיימות במכשיר ה-JS של המוכר שנקרא 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 לדיווח של הקונה הזוכה, השירות מאחזר את כתובת ה-URL של הקונה הזוכה לוגיקת JavaScript, שמאוחזרת באמצעות CustomAudience.getBiddingLogicUri() של הקונה. לאחר מכן השירות מפעיל אחת מהפונקציות שנמצאות ב-JS של הקונה, שנקרא 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). In addition, כל event_reporting_uri צריך לנתח כראוי לתוך Uri. הזה יהיה הערך של Uri שידווח כשערכת ה-SDK מפעילה את reportEvent(ReportEventRequest, Executor, OutcomeReceiver).

לאחר שהקונה/המוכר הוסיף את כל ההתאמות שהוא רוצה לקבל עבורן אירועים, הוא יכול מפעילים את registerAdBeacon(beacons), כאשר beacons הוא שם ההכתבה הוסיף את הצמדים ל.

registerAdBeacon יקפיץ TypeError במצבים הבאים:

  1. קוראים לפונקציה registerAdBeacon יותר מפעם אחת. אם השגיאה הזו מזוהה reportWin/reportresult, הקבוצה המקורית של הצמדים תירשם
  2. ל-registerAdBeacon אין ארגומנט הכתבה אחד בדיוק.
  3. התוכן של הארגומנט 1 dict הוא לא כל צמדי הString: String.

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

אם זורקת את IllegalArgumentException, היא נגרמה על ידי ארגומנט קלט לא חוקי שה-API קיבל כדי לדווח על החשיפה.

אם מוצגת IllegalStateException עם הודעת השגיאה "כשל בבחירת AdSelection" השירותים שלנו.", היא נובעת מכשל פנימי בשירות בחירת המודעות.

אם זורקת את LimitExceededException, היא מתרחשת כשחבילת השיחה חורג מהגבלת הקצב של יצירת הבקשות המותרות ומתבצעת ויסות נתונים (throttle).

אם זורקת את ה-SecurityException, זה קורה כשהמתקשר לא מורשה או לא התבקשת.

החשיפות ידווחו פעם אחת לכל היותר כניסיון הטוב ביותר.
נדרש AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

פרמטרים
request ReportImpressionRequest: הערך הזה לא יכול להיות null.

executor Executor: הערך הזה לא יכול להיות null.

receiver OutcomeReceiver: הערך הזה לא יכול להיות null.

SelectAds (בחירה של מודעות)

public void selectAds (AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, 
                Executor executor, 
                OutcomeReceiver<AdSelectionOutcomeException> receiver)

המערכת בוחרת מודעה מתוך התוצאות של בחירות המודעות שהופעלו בעבר.

הקלט adSelectionFromOutcomesConfig סופק על ידי Ads SDK והאובייקט AdSelectionFromOutcomesConfig מועבר באמצעות קריאה ל-Binnder. לכן, הגודל הכולל של האובייקטים האלה מוגבל למגבלות ה-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, היא נגרמה על ידי ארגומנט קלט לא חוקי שה-API קיבל כדי להפעיל את בחירת המודעות.

אם מוצגת IllegalStateException עם הודעת השגיאה "כשל בבחירת AdSelection" השירותים שלנו.", היא נובעת מכשל פנימי בשירות בחירת המודעות.

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

אם זורקת את LimitExceededException, היא מתרחשת כשחבילת השיחה חורג מהגבלת הקצב של יצירת הבקשות המותרות ומתבצעת ויסות נתונים (throttle).

אם זורקת את ה-SecurityException, זה קורה כשהמתקשר לא מורשה או לא התבקשת.
נדרש AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

פרמטרים
adSelectionFromOutcomesConfig AdSelectionFromOutcomesConfig: הערך הזה לא יכול להיות null.

executor Executor: הערך הזה לא יכול להיות null. אירועי קריאה חוזרת ואירועי האזנה נשלחים באמצעות Executor, דרך קלה לקבוע איזה שרשור בשימוש. כדי לשלוח אירועים דרך ה-thread הראשי אפשר להשתמש Context.getMainExecutor() אם לא, צריך לציין Executor ששולח לשרשור מתאים.

receiver OutcomeReceiver: הערך הזה לא יכול להיות null.

SelectAds (בחירה של מודעות)

נוסף ברמת API 34
public void selectAds (AdSelectionConfig adSelectionConfig, 
                Executor executor, 
                OutcomeReceiver<AdSelectionOutcomeException> receiver)

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

הקלט adSelectionConfig סופק על ידי Ads SDK והאובייקט AdSelectionConfig מועבר באמצעות קריאה ל-Binnder. לכן, הגודל הכולל של האובייקטים האלה כפוף למגבלות של Android IPC. אם לא תעבירו את 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, היא נגרמה על ידי ארגומנט קלט לא חוקי שה-API קיבל כדי להפעיל את בחירת המודעות.

אם מוצגת IllegalStateException עם הודעת השגיאה "כשל בבחירת AdSelection" השירותים שלנו.", היא נובעת מכשל פנימי בשירות בחירת המודעות.

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

אם זורקת את LimitExceededException, היא מתרחשת כשחבילת השיחה חורג מהגבלת הקצב של יצירת הבקשות המותרות ומתבצעת ויסות נתונים (throttle).

אם זורקת את ה-SecurityException, זה קורה כשהמתקשר לא מורשה או לא התבקשת.
נדרש AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

פרמטרים
adSelectionConfig AdSelectionConfig: הערך הזה לא יכול להיות null.

executor Executor: הערך הזה לא יכול להיות null. אירועי קריאה חוזרת ואירועי האזנה נשלחים באמצעות Executor, דרך קלה לקבוע איזה שרשור בשימוש. כדי לשלוח אירועים דרך ה-thread הראשי אפשר להשתמש Context.getMainExecutor() אם לא, צריך לציין Executor ששולח לשרשור מתאים.

receiver OutcomeReceiver: הערך הזה לא יכול להיות null.

updateAdCounterHistogram

public void updateAdCounterHistogram (UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, 
                Executor executor, 
                OutcomeReceiver<ObjectException> outcomeReceiver)

עדכון ההיסטוגרמות הנגדיות של מודעה שנבחרה בעבר על ידי קריאה אל selectAds(android.adservices.adselection.AdSelectionConfig, java.util.concurrent.Executor, android.os.OutcomeReceiver).

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

אפשר לעדכן היסטוגרמות ספירה רק עבור מודעות שצוינו באמצעות ה-adSelectionId הנתון שהוחזר על ידי קריאה מהזמן האחרון לבחירת מודעה של FLEDGE מאותה אפליקציה של מבצע הקריאה החוזרת.

SecurityException מוחזר דרך outcomeReceiver אם:

  1. האפליקציה לא הצהירה על ההרשאות הנכונות במניפסט שלה, או
  2. האפליקציה או הישות שזוהו על ידי callerAdTechIdentifier לא מורשות כדי להשתמש ב-API.
IllegalStateException מוחזר דרך outcomeReceiver אם השיחה לא יגיעו מאפליקציה עם פעילות בחזית.

אם השיחה מתבצעת, מוחזר LimitExceededException דרך outcomeReceiver חורגת מויסות ה-API של האפליקציה לשיחות.

בכל שאר המקרים של כשלים, outcomeReceiver יחזיר Object ריק. שים לב שכדי להגן על פרטיות המשתמש, שגיאות פנימיות לא יישלחו חזרה באמצעות חריג.
נדרש AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

פרמטרים
updateAdCounterHistogramRequest UpdateAdCounterHistogramRequest: הערך הזה לא יכול להיות null.

executor Executor: הערך הזה לא יכול להיות null. אירועי קריאה חוזרת ואירועי האזנה נשלחים באמצעות Executor, דרך קלה לקבוע איזה שרשור בשימוש. כדי לשלוח אירועים דרך ה-thread הראשי אפשר להשתמש Context.getMainExecutor() אם לא, צריך לציין Executor ששולח לשרשור מתאים.

outcomeReceiver OutcomeReceiver: הערך הזה לא יכול להיות null.