הפורמט 'מודעות מותאמות' מאפשר לבעל האתר להתאים אישית מודעה שמוצגת משתמש. אחרי אחזור מודעה מ-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 שמשנה את
נכסים בשאילתה. אנחנו מציעים ליצור ייצוג של מאגר המודעות,
והצאצאים שלו צפיות, באמצעות NativeAdContainerInfo
. זו תהיה חלוקה
אובייקט עם גורמים שונים שחושפים מידע שמוגבל למאגר המודעות
את התוכן שלו, כאשר מידע כזה נשמר על פרטיות ולא יקר
במחשוב. ה-SDK יוכל להביע הסכמה לקבלת קטגוריות של אותות שכלולים ב-NativeAdContainerInfo
. ה-SDK יקבל את האובייקט הזה בכל פעם שמצב המודעה
שינויים בדרכים שרלוונטיות ל-SDK, כמו אירועים לחיוב, כמו חשיפה של מודעה
וקליקים של משתמשים."
בנוסף, בעל האתר יוכל להוסיף תגים ספציפיים לתצוגה (מחרוזות) כדי
כל ילד שיתווסף לאפליקציה NativeAdContainer
, כך שניתן יהיה להשתמש בו כדי להודיע ל-SDK.
לאיזה נכס שמצורף במודעה כל צאצא מתאים.
כשמשתמש ילחץ על תצוגות בבעלות SDK, ספריית ממשק המשתמש תעביר את
MotionEvent
במאפיינים שמתורגמים למרחב הקואורדינטות של ה-SDK
SDK, יחד עם MotionEvent המקורי. בגרסאות עתידיות של Android:
לבדוק איך להוסיף דרכים שיאפשרו לאפליקציית הלקוח להעביר את המיקוד במגע
את כל תנועות המשתמש בחלקים שבבעלות ה-SDK של המודעה המותאמת הזו יטופלו על ידי
SDK.
הצהרות
האימותים הבאים יהיו זמינים ל-SDK כדי לספק ביטחון חזק יותר לגבי הצגת המודעות:
- אימות תקינות המכשיר: שימוש בממשקי API של הפלטפורמה כמו מפתחות אימות (attestation) כדי לקבוע את תקינות המכשיר.
- זהות APK: שימוש בממשקי API של SdkSandbox כמו
SdkSandboxController.getClientPackageName
וממשקי API של PackageManager כמוrequestChecksum
כדי לאמת את זהות ה-APK. VerifiedMotionEvents
: בגרסאות עתידיות של Android, אנחנו בודקים אפשרות לאפשר לאפליקציית הלקוח להעביר את המיקוד למגע של כל תנועות המשתמש בחלקים שבבעלות ה-SDK של המודעה המובנית הזו, כדי שה-SDK יטפל בהם. אפשר להמיר אתMotionEvents
ל-VerifiedMotionEvents
באמצעות ממשקי API של מערכת. ערכת ה-SDK יכולה להציג ממשק משתמש משלה בתגובה לאינטראקציה של המשתמש, אם לבחור.
שאלות פתוחות
אנחנו מזמינים אתכם לשלוח משוב לגבי הנושאים הבאים:
- האם עדיף ש-SDK ייצור את
VerifiedMotionEvents
בעצמו, או שספריית ממשק המשתמש של הספק תעשה זאת בשביל ה-SDK? - האם עדיף שערכת ה-SDK תאפשר לבעל התוכן הדיגיטלי את האפשרות לתצוגות מפורטות שמכילות בסרטון, או להיות הבעלים של הצפיות האלה?
- אילו מאפיינים היית רוצה לכלול באובייקט
AppOwnedAdContainerInfo
? - כמה מודעות או רכיבי מודעות בבעלות ה-SDK אתם מצפים להציג בו-זמנית במסך?