תוצאת הבחירה

public class AdSelectionOutcome
extends Object

java.lang.Object
android.adservices.adselection.AdSelectionתוצאה


המחלקה הזו מייצגת שדה ב-OutcomeReceiver, שהוא קלט ל-AdSelectionManager.selectAds(AdSelectionConfig, Executor, OutcomeReceiver) ב-AdSelectionManager. שדה זה מאוכלס מקרה של שיחת AdSelectionManager#selectAds מוצלחת.

אפשר להחזיר תוצאה ריקה מ-AdSelectionManager.selectAds(android.adservices.adselection.AdSelectionFromOutcomesConfig, java.util.concurrent.Executor, android.os.OutcomeReceiver). כדאי להשתמש AdSelectionOutcome#hasOutcome() כדי לבדוק אם למכונה יש תוצאה חוקית. כאשר hasOutcome() מחזירה false, התוצאות מ-#getAdSelectionId() ומ-AdSelectionOutcome#getRenderUri() לא חוקיות ולא צריכות להיות בשימוש.

סיכום

מחלקות מקוננות

class AdSelectionOutcome.Builder

Builder ל-AdSelectionOutcome אובייקטים. 

שדות

public static final AdSelectionOutcome NO_OUTCOME

מייצג תוצאת AdSelectionresult עם תוצאות ריקות.

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

boolean equals(Object o)

מציין אם אובייקט אחר הוא "שווה ל" הזה.

long getAdSelectionId()

הפונקציה מחזירה את הפרמטר adSelectionId שמזהה את AdSelection.

Uri getRenderUri()

הפונקציה מחזירה את ה-רינדורUri שה-AdSelection מחזיר.

boolean hasOutcome()

מחזירה אם התוצאה מכילה תוצאות או ריקה.

int hashCode()

מחזירה ערך גיבוב (hash) של האובייקט.

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

שדות

NO_OUTCOME

public static final AdSelectionOutcome NO_OUTCOME

מייצג תוצאת AdSelectionresult עם תוצאות ריקות.

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

שווה ל-

נוסף ברמת API 34
public boolean equals (Object o)

מציין אם אובייקט אחר הוא "שווה ל" הזה.

השיטה equals מטמיעים יחס שקילות בהפניות לאובייקטים שאינם אפס:

  • הגדרה רפלקטיבית: לכל ערך הפניה שהוא לא null x, x.equals(x) אמור לחזור true
  • הערך הוא סימטרי: לכל ערכי הפניה שאינם אפס x וגם y, x.equals(y) צריך להחזיר את הערך true אם ורק אם הפונקציה y.equals(x) מחזירה true.
  • הוא מעבר: לכל ערכי הפניה שאינם null x, y וגם z, אם x.equals(y) מחזירה true ו y.equals(z) מחזירה true, ואז x.equals(z) אמור להחזיר true.
  • הוא עקבי: לכל ערכי הפניה שאינם null x ו-y, מספר הפעלות של x.equals(y) מחזיר true באופן עקבי או להחזיר בעקביות false, בתנאי שלא מידע שמשמש בהשוואות של equals אובייקטים הם משתנים.
  • לכל ערך הפניה שהוא לא אפס, x הפונקציה x.equals(null) צריכה להחזיר את הערך false.

ה-method equals למחלקה Object מיושמת את יחס השקילות האפשריים ביותר על אובייקטים; כלומר, לכל ערכי הפניה שאינם אפסיים x וגם y, השיטה הזו מחזירה true אם ורק אם x ו-y מתייחסים לאותו אובייקט (x == y יש את הערך true).

לתשומת ליבכם: בדרך כלל יש צורך בשינוי מברירת המחדל של hashCode בכל פעם שמחליפים את השיטה, כדי לשמור על חוזה כללי ל-method hashCode, שקובעת שאובייקטים שווים חייבים להיות בעלי קודי גיבוב (hash) שווים.

פרמטרים
o Object: אובייקט ההפניה שאליו תשוו.

החזרות
boolean true אם האובייקט הזה זהה ל-obj ארגומנט; אחרת, false.

getAdSelectionId

public long getAdSelectionId ()

הפונקציה מחזירה את הפרמטר adSelectionId שמזהה את AdSelection.

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

getRenderUri

public Uri getRenderUri ()

הפונקציה מחזירה את ה-רינדורUri שה-AdSelection מחזיר.

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

וישתוצאה

public boolean hasOutcome ()

מחזירה אם התוצאה מכילה תוצאות או ריקה. תוצאות ריקות render uris אסור להשתמש בה.

החזרות
boolean

קוד גיבוב (hashCode)

נוסף ברמת API 34
public int hashCode ()

מחזירה ערך גיבוב (hash) של האובייקט. השיטה הזאת נתמך לטובת טבלאות גיבוב (hash), כמו אלה שמסופקות על ידי HashMap

החוזה הכללי של hashCode הוא:

  • בכל פעם שהוא מופעל על אותו אובייקט יותר מפעם אחת במהלך הרצה של אפליקציה ב-Java, ה-method hashCode צריך להחזיר בעקביות את אותו מספר שלם, כל עוד אין מידע שנעשה בו שימוש בהשוואות של equals באובייקט. המספר השלם הזה לא צריך להיות עקבי מהפעלה אחת של לביצוע אחר של אותה האפליקציה.
  • אם שני אובייקטים שווים לפי equals(Object) ואז קריאה ל-method hashCode בכל אחד שני האובייקטים חייבים להפיק את אותה תוצאה של מספר שלם.
  • לא נדרש שאם שני אובייקטים אינם שווים בהתאם לequals(java.lang.Object) ואז קריאה ל-method hashCode בכל אחד שני אובייקטים חייבים להניב תוצאות נפרדות של מספרים שלמים. אבל, מתכנת צריך להיות מודע לכך שהפקת תוצאות של מספרים שלמים נפרדים לאובייקטים לא שווים, עשויה לשפר את הביצועים של טבלאות גיבוב.

עד כמה שהדבר מעשי באופן סביר, שיטת ה-hashCode מוגדרת לפי מחלקה Object מחזיר מספרים שלמים ייחודיים של אובייקטים ייחודיים. (ייתכן שה-hashCode לא הוטמע בתור פונקציה כלשהי של כתובת הזיכרון של אובייקט בשלב כלשהו בזמן).

החזרות
int ערך קוד גיבוב (hash) של האובייקט הזה.