הרשאת הודעה עבור הודעות הצטרפות

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

דף זה מתאר מה יצרני OEM חייבים ליישם כדי לתמוך בשינוי זה וכיצד לאמת את היישום.

יישום שינויים עבור הודעות הסכמה

החל מ-Android 13, אפליקציות חייבות להצהיר על כוונתן לשלוח התראות על ידי בקשת הרשאת זמן ריצה android.permission.POST_NOTIFICATION מהמערכת לפני שיוכלו לשלוח התראות.

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

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

התנהגות של הודעות משתמשים במודל בחירה

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

מכשיר באנדרואיד 13 אפליקציות ממוקדות ל-Android 13 ומעלה אפליקציות ממקדות לגרסאות נמוכות מאנדרואיד 13
התקנה חדשה הודעות נחסמות עד שתתבקש מהאפליקציה.

אפליקציות שולטות מתי לבקש רשות.

הודעות נחסמות עד שתתבקש על ידי מערכת ההפעלה.

הרשאה מתבקשת בהפעלה הראשונה של האפליקציה.

אפליקציה קיימת (שדרוג) הודעות מותרות עד שתתבקש מהאפליקציה.

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

הודעות מותרות עד שתתבקש על ידי מערכת ההפעלה.

הרשאה זמנית ניתנת עד להפעלה הראשונה של האפליקציה.

הנחיות ליישום

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

במהלך ההטמעה, השתמש בהנחיות הבאות לגבי התנהגות הודעות משתמשים עבור אפליקציות הממקדות ל-Android 13 ומטה SDK:

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

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

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

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

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

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

  • הודעות מדיה הקשורות להפעלת מדיה מתמשכת חייבות להיות פטורות מהרשאת ההתראה.

אימות שינויים במערכות ההודעות וההרשאות

כדי לאמת את היישום, הרץ את הבדיקות הבאות: