מודעות מותאמות ב-Android

שליחת משוב

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

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

התמיכה במודעות באנר בזמן הריצה של ה-SDK מתאפשרת באמצעות API של SurfaceControlViewHost. כך ל-SDK תהיה אפשרות להציג את ממשק המשתמש מתהליך זמן הריצה של ה-SDK בלי לשנות אותו על ידי לאפליקציית לקוח. כדי לקבוע, צריך להשתמש במצב SurfaceView Z above או Z below האם השטח שבו מתבצע רינדור ממשק המשתמש של ה-SDK הוא מעל או מתחת ללקוח החלון של האפליקציה. כשמודעה מעובדת במצב Z מעל, ה-SDK מקבל MotionEvents מאינטראקציה של משתמש, אבל האפליקציה של הלקוח צפיות לא מוצגות מעל למודעה. כשמודעה מעובדת במצב Z מתחת, באפליקציה מוצגות צפיות משלה מעל המודעה, אבל MotionEvents מהמשתמש האינטראקציה במודעה מעבירה לאפליקציה, ולא ל-SDK.

ה-SDK יכול להשתמש בספריות Jetpack privacysandbox.ui כדי ליצור ולתחזק סשן בממשק המשתמש.

מאגר מודעות בבעלות האפליקציה

יצרנו אב טיפוס שמאפשר ל-SDK להיות הבעלים של כל הצפיות שכוללות מודעה מותאמת (כולל את שכבות-העל של האפליקציה), וגיליתי שלמרות שהדבר אפשרי, היא הטילה הגבלות על ממשק המשתמש והגברת המורכבות של השילוב עם ה-SDK. A בגישה הפרגמטית היא לתת לאפליקציה להיות הבעלים של הכי הרבה צפיות. ה-SDK עדיין יכול לבחור להציג ממשק משתמש מסוים בעצמם, כמו תצוגת המודעה, באמצעות SandboxedSdkView מהאתר privacysandbox.ui. הגישה הזאת מספקת הכי הרבה גמישות אנחנו תומכים בתרחישים קיימים ועתידיים של פורמט המודעה הזה: גישה זו, מפתח האפליקציות יכול להזיז את רכיבי המודעה ולעצב אותם נדרש, בזמן שה-SDK נשארת הבעלות על נגן הווידאו, אם עדיף שומרת על גישה ללחצני המדיה.

תרשים שמראה איך הנתונים עוברים בין בעל האפליקציה לבין ה-SDK.
תהליך הבקרה המוצע למודעות מותאמות.

התראות לגבי מצב המודעה

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

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

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

הצהרות

האימותים הבאים יהיו זמינים ל-SDK כדי לשפר את היכולות הבטחות בנוגע להצגת מודעות:

  1. אימות תקינות המכשיר: שימוש בממשקי API של הפלטפורמה כמו מפתחות אימות (attestation) כדי לקבוע את תקינות המכשיר.
  2. זהות APK: שימוש בממשקי API של SdkSandbox כמו SdkSandboxController.getClientPackageName וממשקי API של PackageManager כמו requestChecksum כדי לאמת את זהות ה-APK.
  3. VerifiedMotionEvents: בגרסאות עתידיות של Android, אנחנו בודקים את מתן הרשאה לאפליקציית הלקוח להעביר את המיקוד במגע לכל המשתמשים תנועות ב-SDK שבבעלות החלקים של המודעה המותאמת הזו שטופלו על ידי ה-SDK. אפשר להמיר את MotionEvents לפורמט VerifiedMotionEvents באמצעות ממשקי ה-API של המערכת. ערכת ה-SDK יכולה להציג ממשק משתמש משלה בתגובה לאינטראקציה של המשתמש, אם לבחור.

שאלות פתוחות

אנחנו מבקשים משוב לגבי הנושאים הבאים:

  1. האם עדיף ל-SDK ליצור VerifiedMotionEvents בעצמו, או לספריית ממשק המשתמש של הספק לעשות זאת עבור ה-SDK?
  2. האם עדיף שערכת ה-SDK תאפשר לבעל התוכן הדיגיטלי את האפשרות לתצוגות מפורטות שמכילות בסרטון, או להיות הבעלים של הצפיות האלה?
  3. אילו נכסים היית רוצה לראות שייכללו אובייקט אחד (AppOwnedAdContainerInfo)?
  4. כמה מודעות או רכיבי מודעות בבעלות ה-SDK צפויים להופיע באותו זמן הזמן על המסך?