סקירה כללית על Topics API לנייד

שליחת משוב

מידע על Topics API

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

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

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

Topics API נועד לתמוך בערכות SDK לפרסום של צד שלישי בדרך כלל פועלות בכמה אפליקציות. התמיכה הזו מגיעה לחשוף חלק מתחומי העניין של האפליקציות השונות שערכות ה-SDK האלה בדרך כלל לצפות. מפתחי אפליקציות יחידים לא אמורים לצפות לקבל מידע נוסף מידע על המשתמשים שלהם.

מושגים מרכזיים

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

איך זה עובד

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

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

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

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

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

// Initialize the Topics API.
…
topicsFuture = AdvertisingTopicsClient.getTopics();

// Retrieve Topics and use them in Ad request.
Futures.addCallback(
    topicsFuture,
    new FutureCallback<AdvertisingTopicsInfo>() {
        @Override
        public void onSuccess(@Nullable AdvertisingTopicsInfo topicsInfo) {
            // Sanitize Topics result.
            ...
            // Initialize ad request with Topics obtained.
            AdRequest adRequest = AdRequest.initialize(topicsInfo);
        }

        @Override
        public void onFailure(Throwable t) {
            // Handle error.
            ...
        }
});

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

גישה לממשקי Topics API

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

פרטים

  • לאחר כל תקופה של זמן מערכת (למשל פעם בשבוע), מחושבים 5 הנושאים המובילים של המשתמש באמצעות מידע מהמכשיר.

    • כשנשלחת קריאה ל-Topics API, הפלטפורמה תבדוק אם הנושא הוקצה לאפליקציה שמפעילה את ה-API. אם לא הוקצו משימות נושאים, אחד ייבחר כנושא הבא והנושא שייבחר יהיה שהוקצו לאפליקציה הזו עד סוף התקופה הזו.
      • נושא שיש לו הסתברות של 95%, הוא נבחר באופן אקראי מתוך הרשימה את 5 הנושאים המובילים שחושבו לאותה תקופה.
      • אם הנושא הוא הסתברות של 5%, הנושא נבחר באופן אקראי מתוך הטקסונומיה.
      • המתקשר יכול לציין שהוא רוצה לאחזר נושאים שלא לשנות את המצב באמצעות קריאה ל-getTopics באמצעות הפרמטר shouldRecordObservation = false. כלומר, הנושאים הוחזרה, אבל השיחה לא תיכלל בתקופת הזמן השבועית של החישוב, וגם לא יעדכן את רשימת הנושאים שנצפו של הקריאה החוזרת.
    • הסיבה לכך שכל אפליקציה מקבלת אחד מתוך כמה נושאים היא שאפליקציות שונות מתקיימות בנושאים שונים, וזה מקשה על האפליקציות כדי להצליב את אותו משתמש בקורלציה.
      • לדוגמה, יכול להיות שנושא T1 יופיע באפליקציה א' בשביל המשתמש, אבל אפליקציה ב' עשויה לראות בשביל המשתמש את הנושא T1 לעיון בנושא ב'. זה מקשה על שתי האפליקציות לקבוע שהמידע הזה משויך לאותו משתמש.
  • Topics API מחזיר רשימה של עד 3 נושאים, 1 לכל אחד מ-3 הנושאים האחרונים. תקופות של זמן מערכת.

    • אפליקציות שנעשה בהן שימוש בתדירות נמוכה יספיקו לעוד 3 נושאים, נושאים כדי למצוא מודעות רלוונטיות, אבל אפליקציות שנמצאות בשימוש תדיר ילמדו לכל היותר נושא חדש אחד בשבוע.
    • פרטי הנושא המוחזרים כוללים מזהה נושא (int) תואם בטקסונומיה, בגרסת טקסונומיה ובמודל מסַווג. .
    • רק מתקשרים שראו את המשתמש משתמשים באפליקציה שמשויכת לנושא בשלוש התקופות האחרונות יכולים לקבל את הנושא.
    • כל הנושאים שמוחזרים מייצגים את תחומי העניין של המשתמש, וניתן לבחור אחד מהנושאים האלה או את כולם להתאמה אישית של מודעות במודעה בקשה.
  • אחרי הקצאת נושא לאפליקציה שמפעילה את Topics API, הפלטפורמה תקבע אם המתקשר יכול לקבל את הנושא הזה.

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

    לדוגמה, נניח שבמכשיר מותקנות 7 אפליקציות של המשתמש: A, B, C, D, E. ו. נניח שסיווג הנושא של האפליקציה ושל המודעה ערכות ה-SDK הטכנולוגיות באפליקציות האלה הן:

    קידום אפליקציות סיווג נושאים SDK של פרסום דיגיטלי
    A T1, T5 ad-sdk1, ad-sdk2.
    B T2 ad-sdk2
    C T3, T6 ad-sdk3, ad-sdk4.
    D T1, T4 ad-sdk1
    E T5 ad-sdk4, ad-sdk5
    F T6 ad-sdk2, ad-sdk3, ad-sdk4.
    G T7 ad-sdk2
    • סוף שבוע 1: Topics API יוצר את 5 הנושאים המובילים של המשתמש למטרה הזו תקופה של זמן מערכת.
    נושא מוביל מתקשרים שיכולים לקבל מידע על הנושא
    T1 ad-sdk1, ad-sdk2.
    T2 ad-sdk2
    T3 ad-sdk3, ad-sdk4.
    T4 ad-sdk1
    T5 ad-sdk1, ad-sdk2, ad-sdk4, ad-sdk5.
    • בשבוע השני, אם מתקשר באפליקציה כלשהי קורא ל-API, הנושא מוחזר הרשימה תכלול רק נושאים שעבורם המתקשר נמצא ברשימת המתקשרים שיכולה ללמוד על הנושא" לגבי הנושא הרלוונטי לאפליקציה הזו, בתקופה הזו.
    • חלון ההיסטוריה שנכלל בחישוב של הנושאים הזמינים כל מתקשר נמשך 3 תקופות של זמן מערכת (או 3 שבועות).
    • רק נושאים שמשויכים לאפליקציות שמפעילות את Topics API דרך מודעה נעשה שימוש בערכות SDK. המשמעות היא שאם האפליקציה לא כוללת ערכות SDK של מודעות שקוראים ל-Topics API, הנושאים שמשויכים לאפליקציה לתרום למאגר הנושאים הנגישים לערכות ה-SDK של מודעות.
    • האפליקציות יכולות גם לבטל באופן הצהרתי את ההסכמה ל-Topics API דרך המניפסט ו-XML, כדי למנוע מערכות SDK של מודעות להשתמש את ה-API של האפליקציה הזו. נושאים שמשויכים לאפליקציות שביטלתם את ההסכמה לא ישפיעו על לתרום לחישוב הנושאים השבועי. המסמך הזה יהיה עודכנה כדי לכלול פרטי הטמעה קשורים.
  • אם אין מספיק שימוש באפליקציה כדי שהפלטפורמה תוכל להסיק 5 נושאים, עשויה לבחון אפשרויות כמו יצירה אקראית של נושאים נותרים.

טקסונומיה

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

מסווג נושאים

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

  • כשמודל הסיווג משמש להסקת מסקנות כדי לחשב את הנושאים בפרק זמן של תקופה, קבוצת האותות שנעשה בה שימוש נשארה במכשיר. הקבוצה הזו של דוגמאות לאותות: אפליקציות שהותקנו או היו בשימוש לאחרונה, וייתכן שהן יהיו הוא כולל אותות אחרים.
  • Google תאמן את המודלים הראשוניים, כאשר נתוני האימון כוללים תוויות שנאספו על ידי בודקים אנושיים למידע על אפליקציות שזמינות לכולם. המודל להיות זמינים בחינם לאפליקציות כדי שיוכלו לבדוק אילו נושאים האפליקציה מסווגת ל.
  • המודלים הראשוניים יעברו אימון על מידע לגבי אפליקציות שגלוי לכולם מקבוצה מוגבלת של חנויות אפליקציות, כמו חנות Google Play.
  • יכול להיות שאפליקציה ממופה ליותר מנושא אחד, ללא נושאים או היא לא מתווספת להיסטוריית הנושאים של המשתמש. במקרה שאפליקציה ממופה אל יותר מנושא אחד בטקסונומיה, מספר הנושאים שנבחרו לאפליקציה הזו יוגבל ל-3 המובילים.

פקדי משתמש

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

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

//Button that launches settings UI
private Button mSettingsAppButton;
private static final String RB_SETTING_APP_INTENT = "android.adservices.ui.SETTINGS";


//Does setup for button on screen that will launch settings UI to observe Topics
private void registerLaunchSettingsAppButton() {
    mSettingsAppButton.setOnClickListener(
        new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                Context context = getApplicationContext();
                Intent activity2Intent = new Intent(RB_SETTING_APP_INTENT);
                activity2Intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                context.startActivity(activity2Intent);
            }
        });
}

רישום של פלטפורמה של פרסום דיגיטלי

כדי לקבל גישה ל-Topics API, כל הפלטפורמות של הפרסום הדיגיטלי (כולל של Google) צריכות להשלים את תהליך ההרשמה.

מפתחי אפליקציות יכולים לקבוע אילו מפתחי טכנולוגיות פרסום יוכלו לגשת לממשקי ה-API של Topics API: כולל מזהה הרישום של מפתח הפרסום הדיגיטלי בקובץ המניפסט של האפליקציה.

הצפנה של נושאים שהוחזרו

פלטפורמות טכנולוגיות פרסום רשומות ששולחות קריאה ל-Topics API נדרשות גם כדי לספק הצפנה נוספת כדי לוודא שהנושאים שהוחזרו קריאים רק של הקריאה החוזרת.

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

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

פרטי ההצפנה

עם כניסת ההצפנה, מופעלים קריאה ל-'GetTopics() ' תיצור עכשיו תשובה עם הרשימה 'EncryptedTopic' אובייקטים. פענוח התוצאות האלה התוצאה תהיה אובייקט עם אותו פורמט JSON של האובייקט Topics הקודם.

Topics API תומך בהטמעה של HPKE (מפתח ציבורי היברידי) בתנועה אחת. הצפנה). אנחנו מצפים שהמתקשר הרשום יארח מפתח ציבורי של 32 ביט במהלך ההרשמה סופקה נקודת קצה (endpoint) של כתובת URL להצפנה ציבורית. המפתחות האלה להיות בקידוד Base64.

באובייקט EncryptedTopic יש 3 שדות. רשימת הנושאים שהוחזרו יכולה להיות באמצעות המפתח הפרטי המתאים של המפתח הציבורי.

למטרות פיתוח, אפשר לבדוק את ההצפנה של Topics API על ידי השבתה את בדיקת הרישום. הפעולה הזו תיאלץ את ה-API להשתמש במפתח הציבורי לבדיקה לצורך הצפנת התשובות שלך. אפשר לפענח את הנושאים המוצפנים באמצעות המפתח הפרטי המתאים.