שינויים במסגרת התאימות (Android {7/}14)

איור 1. במסך "שינויים בתאימות של האפליקציה" שבאפשרויות למפתחים מופיעה רשימה של השינויים שאפשר להפעיל או להשבית.

בדף הזה מתוארים שינויים שאפשר להפעיל או להשבית, שהם חלק ממסגרת התאימות ב-Android 14 (רמת API‏ 34). אתם יכולים להשתמש ברשימה הזו בשילוב עם אפשרויות למפתחים ופקודות ADB כדי לבדוק את האפליקציה ולנפות בה באגים, בזמן שאתם מתכוננים לתמוך ב-Android 14 ולטרגט אליה.

ריכזנו כאן כמה מהפעולות שאפשר לבצע באמצעות הכלים של מסגרת התאימות:

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

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

שינויים בהתנהגות שנכללים במסגרת התאימות

ברשימה שבקטע הזה מתוארים השינויים שאפשר להפעיל או להשבית, שנכללים במסגרת התאימות ב-Android 14.

אפשר לסנן את רשימת השינויים לפי מצב ברירת המחדל שלהם.

שינויים שניתן להפעיל או להשבית במסגרת התאימות ב-Android 14

ACCESS_SHARED_IDENTITY

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

מעניקה גישה לזהות של האפליקציה המפעילה אם האפליקציה הביעה הסכמה לשיתוף הזהות שלה על ידי הפעלת הפעילות הזו עם מופע של ActivityOptions שבו הופעלה ActivityOptions.setShareIdentityEnabled(boolean) עם הערך true, או אם ה-UID של הפעילות שהופעלה זהה לזה של האפליקציה המפעילה. כשהשינוי הזה מופעל ואחת מהדרישות האלה מתקיימת, הפעילות יכולה לגשת למזהה המשתמש ולשם החבילה של האפליקציה שהפעילה אותה באמצעות Activity.getLaunchedFromUid() ו-Activity.getLaunchedFromPackage(), בהתאמה.

ANR_PRE_UDC_APIS_ON_SLOW_RESPONSES

מזהה השינוי: 258236856
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות את Android 14 (רמת API‏ 34) ומעלה.

כשהאפשרות הזו מופעלת, היא מפעילה הודעת "האפליקציה לא מגיבה" (ANR) כשהאפליקציות מגיבות לאט בממשקי API ובפונקציונליות מ-Android 13 (רמת API ‏33) ומטה.

AUTHORITY_ACCESS_CHECK_CHANGE_ID

מזהה השינוי: 207133734
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

באפליקציות שמטרגטות את Android 14 (רמת API‏ 34) ומעלה, מאפשרת בדיקה של גישת הרשות למזהה המשתמש (UID) ששולח קריאה בכל ממשקי ה-API שקשורים לסנכרון.

CAMERA_MIC_INDICATORS_NOT_PRESENT

מזהה השינוי: 162547999
מצב ברירת המחדל: מושבת בכל האפליקציות.

מציין שהמכשיר הזה תומך באינדיקטורים של המצלמה והמיקרופון. הערך הוא false אם הוא קיים, כי השיטה CompatChanges#isChangeEnabled מחזירה את הערך true אם מזהה השינוי לא קיים.

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER

מזהה השינוי: 244637991
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות את Android 14 (רמת API‏ 34) ומעלה.

כשאפליקציה שולחת PendingIntent באמצעות PendingIntent#send() או שיטות דומות, האפליקציה צריכה עכשיו להביע הסכמה אם היא רוצה להעניק הרשאות משלה להפעלת פעילות ברקע כדי להתחיל את ה-intent בהמתנה.

מידע נוסף על השינוי הזה זמין בקטע הגבלות נוספות על הפעלת פעילויות ברקע בדף השינויים בהתנהגות של Android 14.

DETACH_THROWS_ISE_ONLY

מזהה השינוי: 236825255
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

דגל שמאפשר להקפיץ הודעת שגיאה נכונה על ידי #detachImage.

‫#detachImage מתועד כגורם לזריקת IllegalStateException במקרה של שגיאה. שיטת עזר מקומית גרמה לזריקת RuntimeException אם המשטח ננטש במהלך הניתוק של Image.

ההתנהגות החריגה הזו, שלא תועדה בעבר, ממשיכה עד Android 13 (רמת API ‏33).

אחרי Android 13 (רמת API‏ 33), ה-method המקומית של ה-helper זורקת רק את IllegalStateExceptions בהתאם למסמכי התיעוד.

כשהשינוי הזה מופעל, #detachImage זורק IllegalStateException רק אם הוא נתקל בשגיאות בזמן ניתוק התמונה. ההתנהגות לא משתנה באפליקציות שמטרגטות ל-Android 13 (רמת API ‏33) ומטה.

DOWNSCALED

מזהה השינוי: 168419799
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

כשהשינוי הזה מופעל בחבילת APK, הגודל של האפליקציה משתנה באופן מאולץ לגורם הגבוה ביותר לקביעת קנה מידה שמופעל. לדוגמה, אם גם 80% וגם 70% (DOWNSCALE_80 ו-DOWNSCALE_70) מופעלים, המערכת תשתמש ב-80%. אם גם השינוי הזה וגם המדיניות DOWNSCALED_INVERSE מופעלים, המדיניות DOWNSCALED_INVERSE מקבלת עדיפות והגורם לקביעת קנה המידה מופעל באופן הפוך.

DOWNSCALED_INVERSE

מזהה השינוי: 273564678
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

כשהשינוי הזה מופעל בחבילת APK, האפליקציה משנה את הגודל שלה באופן מאולץ לגורם לקביעת קנה מידה הנמוך ביותר שמופעל. לדוגמה, אם מפעילים גם את 80% וגם את 70% (DOWNSCALE_80 ו-DOWNSCALE_70), המערכת תשתמש ב-80% כי כשמפעילים את גורם קביעת קנה המידה באופן הפוך, 80% שווה ל-125%, וזה פחות מ-142.86% שמתקבלים כשמפעילים באופן הפוך גורם קביעת קנה מידה של 70%. אם גם השינוי הזה וגם DOWNSCALED מופעלים, DOWNSCALED_INVERSE מקבל עדיפות והגורם לקביעת קנה המידה מוחל באופן הפוך.

DOWNSCALE_30

מזהה השינוי: 189970040
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת בתצוגה עם 30% מהרזולוציה האנכית והאופקית של התצוגה האמיתית. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 333.33% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_35

מזהה השינוי: 189969749
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 35% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 285.71% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_40

מזהה השינוי: 189970038
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 40% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעלת, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת בתצוגה עם 250% מהרזולוציה האנכית והאופקית של התצוגה האמיתית.

DOWNSCALE_45

מזהה השינוי: 189969782
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת בתצוגה עם 45% מהרזולוציה האנכית והאופקית של התצוגה האמיתית. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 222.22% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_50

מזהה השינוי: 176926741
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 50% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 200% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_55

מזהה השינוי: 189970036
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 55% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת בתצוגה עם 181.82% מהרזולוציה האנכית והאופקית של התצוגה האמיתית.

DOWNSCALE_60

מזהה השינוי: 176926771
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 60% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 166.67% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_65

מזהה השינוי: 189969744
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעלת, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 65% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 153.85% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_70

מזהה השינוי: 176926829
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 70% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת בתצוגה עם 142.86% מהרזולוציה האנכית והאופקית של התצוגה האמיתית.

DOWNSCALE_75

מזהה השינוי: 189969779
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם המדיניות DOWNSCALED מופעלת, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 75% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 133.33% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_80

מזהה השינוי: 176926753
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 80% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 125% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_85

מזהה השינוי: 189969734
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 85% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 117.65% מהרזולוציה האנכית והאופקית של המסך האמיתי.

DOWNSCALE_90

מזהה השינוי: 182811243
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם DOWNSCALED מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 90% מהרזולוציה האנכית והאופקית של המסך האמיתי. אם גם DOWNSCALED_INVERSE מופעל, הפעלת השינוי הזה בחבילה מאלצת את האפליקציה להניח שהיא פועלת במסך עם 111.11% מהרזולוציה האנכית והאופקית של המסך האמיתי.

ENABLE_PLATFORM_MDNS_BACKEND

מזהה השינוי: 270306772
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

באפליקציות שמטרגטות את Android בגרסה 14 ואילך, נעשה שימוש בהטמעה של mDNS שמשולבת בפלטפורמה כ-backend, ובאפליקציות שמטרגטות גרסאות קודמות, נעשה שימוש ב-backend מדור קודם של זיהוי שירותי רשת (NSD) (עם דימון מקורי מדור קודם כ-backend של NsdManager).

ENABLE_SELF_CERTIFIED_CAPABILITIES_DECLARATION

מזהה השינוי: 266524688
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

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

ENFORCE_PACKAGE_VISIBILITY_FILTERING

מזהה השינוי: 154726397
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API 34) ומעלה.

באפליקציות שמטרגטות ל-Android 14 (רמת API ‏34) ומעלה, צריך להצהיר במניפסט על צורכי החשיפה של החבילה כדי לגשת לממשקי ה-API של AccountManager.

ENFORCE_READ_ONLY_JAVA_DCL

מזהה השינוי: 218865702
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות את Android 14 (רמת API‏ 34) ומעלה.

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

מידע נוסף על השינוי הזה זמין בקטע טעינה דינמית בטוחה יותר של קוד בדף השינויים בהתנהגות של Android 14.

ENFORCE_STRICT_QUERY_BUILDER

מזהה השינוי: 143231523
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

EXACT_LISTENER_ALARMS_DROPPED_ON_CACHED

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

משימות ברגע מדויק שמצפות לקריאה חוזרת (callback) מסוג AlarmManager.OnAlarmListener נמחקות כשהאפליקציה שמפעילה את השיחה עוברת למצב שמירה במטמון.

מידע נוסף על השינויים בהתראות המדויקות ב-Android 14 זמין במאמר תזמון התראות מדויקות נדחה כברירת מחדל.

FGS_TYPE_CHECK_FOR_INSTANT_APPS

מזהה השינוי: 261055255
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API 34) ומעלה.

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

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

FGS_TYPE_NONE_DEPRECATION_CHANGE_ID

מזהה השינוי: 255042465
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API 34) ומעלה.

כשההגדרה הזו מופעלת, אפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה ומפעילות שירות שפועל בחזית באמצעות הסוג FOREGROUND_SERVICE_TYPE_NONE שהוצא משימוש, יגרמו להצגת אזהרה ביומן.

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

FGS_TYPE_NONE_DISABLED_CHANGE_ID

מזהה השינוי: 255038118
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API 34) ומעלה.

כשההגדרה הזו מופעלת, אפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה ומפעילות שירות שפועל בחזית באמצעות הסוג שהוצא משימוש FOREGROUND_SERVICE_TYPE_NONE גורמות לחריגה.

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

FGS_TYPE_PERMISSION_CHANGE_ID

מזהה השינוי: 254662522
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

כשההגדרה הזו מופעלת, אם אפליקציות שמטרגטות את Android 14 (רמת API‏ 34) ומעלה מפעילות שירות שפועל בחזית בלי ההרשאות הנדרשות שמשויכות לסוג השירות שפועל בחזית, התוצאה היא SecurityException.

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

FORCE_DISABLE_HEVC_SUPPORT

מזהה השינוי: 174227820
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

FORCE_ENABLE_HEVC_SUPPORT

מזהה השינוי: 174228127
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

FORCE_NON_RESIZE_APP

מזהה השינוי: 181146395
מצב ברירת המחדל: מושבת בכל האפליקציות.

מאלצת את החבילות שעליהן היא מוחלת להיות לא ניתנות לשינוי גודל.

FORCE_RESIZE_APP

מזהה השינוי: 174042936
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

GWP_ASAN

מזהה השינוי: 145634846
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

מידע נוסף על השימוש ב-GWP-ASan זמין במדריך של GWP-ASan.

IMPLICIT_INTENTS_ONLY_MATCH_EXPORTED_COMPONENTS

מזהה השינוי: 229362273
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

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

מידע נוסף על השינוי הזה זמין בקטע הגבלות על אינטנטים מרומזים ואינטנטים בהמתנה בדף השינויים בהתנהגות של Android 14.

מזהה השינוי: 266201607
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

באפליקציות שמטרגטות ל-Android 14 (רמת API ‏34) ומעלה, האפליקציות צריכות לבקש מהמשתמש לתת הסכמה לפני כל סשן של תיעוד MediaProjection.

מידע נוסף על השינוי הזה זמין בקטע בדף השינויים בהתנהגות של Android 14, שבו מוסבר איך נדרשת הסכמה מהמשתמש לכל סשן של MediaProjection.

NATIVE_HEAP_ZERO_INIT

מזהה השינוי: 178038272
מצב ברירת המחדל: מושבת בכל האפליקציות.

הפעלת אתחול אוטומטי לאפס של הקצאות זיכרון מקומיות בערימה.

NATIVE_MEMTAG_ASYNC

מזהה השינוי: 145772972
מצב ברירת המחדל: מושבת בכל האפליקציות.

הפעלת בדיקה אסינכרונית (ASYNC) של תגי זיכרון בתהליך הזה. הדגל הזה משפיע רק על חומרה שתומכת ב-Memory Tagging Extension‏ (MTE) של ARM.

NATIVE_MEMTAG_SYNC

מזהה השינוי: 177438394
מצב ברירת המחדל: מושבת בכל האפליקציות.

ההגדרה הזו מפעילה בדיקה סינכרונית (SYNC) של תגי זיכרון בתהליך הזה. הדגל הזה משפיע רק על חומרה שתומכת ב-Memory Tagging Extension‏ (MTE) של ARM. אם גם המדיניות NATIVE_MEMTAG_ASYNC וגם האפשרות הזו מופעלות, האפשרות הזו מקבלת עדיפות ו-MTE מופעל במצב SYNC.

OVERRIDE_ANY_ORIENTATION

מזהה השינוי: 265464455
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

מזהה השינוי: 191514214
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

מזהה השינוי: 189229956
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

מזהה השינוי: 266124927
מצב ברירת המחדל: מושבת בכל האפליקציות.

מפעילה את SCREEN_ORIENTATION_REVERSE_LANDSCAPE באפליקציה שבה היא מוגדרת. אם המדיניות OVERRIDE_ANY_ORIENTATION לא מופעלת, המדיניות SCREEN_ORIENTATION_REVERSE_LANDSCAPE משמשת רק כשהפעילות מציינת כיוון לרוחב. הפעלת השינוי הזה יכולה לעזור לכם לבדוק את ההתנהגות של האפליקציה בהתאם להבדלים בין מכשירים שבהם תצוגה לרוחב תואמת ל-Surface.ROTATION_90 לבין מכשירים שבהם היא תואמת ל-Surface.ROTATION_270.

OVERRIDE_MIN_ASPECT_RATIO

מזהה השינוי: 174042980
מצב ברירת המחדל: מושבת בכל האפליקציות.

השינוי הזה הוא שומר הסף של כל השינויים שמאלצים יחס גובה-רוחב מינימלי נתון. השינוי הזה מאפשר להחיל את יחסי הגובה-רוחב המינימליים הבאים:

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

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

מזהה השינוי: 218959984
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

OVERRIDE_MIN_ASPECT_RATIO_LARGE

מזהה השינוי: 180326787
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

מזהה השינוי: 180326845
מצב ברירת המחדל: מושבת בכל האפליקציות.

אם גם המדיניות OVERRIDE_MIN_ASPECT_RATIO מופעלת, הפעלת השינוי הזה בחבילה מגדירה את יחס הגובה-רוחב המינימלי של הפעילות לערך בינוני, כפי שמוגדר על ידי OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

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

אם גם המדיניות OVERRIDE_MIN_ASPECT_RATIO מופעלת, השינוי הזה מגביל כל שינוי אחר שמאלץ יחס גובה-רוחב מינימלי של פעילות לערך מסוים – כמו OVERRIDE_MIN_ASPECT_RATIO_LARGE ו- OVERRIDE_MIN_ASPECT_RATIO_MEDIUM – לפעילויות שגם יש להן כיוון לאורך.

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

מזהה השינוי: 236283604
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

מזהה השינוי: 265451093
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

מזהה השינוי: 265452344
מצב ברירת המחדל: מושבת בכל האפליקציות.

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

RATE_LIMIT_TOASTS

מזהה השינוי: 174840628
מצב ברירת המחדל: אי אפשר להחליף את השינוי הזה. הוא מתועד רק על ידי מסגרת התאימות.

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

REJECT_NEGATIVE_NETWORK_ESTIMATES

מזהה השינוי: 253665015
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

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

REQUIRE_NETWORK_CONSTRAINT_FOR_NETWORK_JOB_WORK_ITEMS

מזהה השינוי: 241104082
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה.

באפליקציות שמטרגטות ל-Android 14 (רמת API ‏34) ומעלה, צריך לציין אילוץ רשת במשימה המארחת אם JobWorkItem הכלול מציין שימוש ברשת.

REQUIRE_NETWORK_PERMISSIONS_FOR_CONNECTIVITY_JOBS

מזהה השינוי: 271850009
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API 34) ומעלה.

באפליקציות שמטרגטות ל-Android 14 (רמת API‏ 34) ומעלה, האפליקציות צריכות לציין גם את ההרשאה INTERNET וגם את ההרשאה ACCESS_NETWORK_STATE כשמתזמנים משימה עם אילוץ קישוריות.

THROW_ON_INVALID_DATA_TRANSFER_IMPLEMENTATION

מזהה השינוי: 255371817
מצב ברירת המחדל: מופעל באפליקציות שמטרגטות ל-Android 14 (רמת API ‏34) ומעלה.

באפליקציות שמטרגטות את Android 14 (רמת API‏ 34) ומעלה, המערכת זורקת חריגה אם האפליקציה לא מטמיעה כמו שצריך את כל ממשקי ה-API הנדרשים להעברת נתונים כשמציינים משימה של העברת נתונים ביוזמת המשתמש.

מידע נוסף על השינוי הזה זמין בדף שמתאר איך להעביר שירותים שפועלים בחזית למשימות של העברת נתונים ביוזמת המשתמש.

USE_EXPERIMENTAL_COMPONENT_ALIAS

מזהה השינוי: 196254758
מצב ברירת המחדל: מושבת בכל האפליקציות.

כשהמדיניות מופעלת, המערכת מאפשרת לחבילת "android" להשתמש בכינויים של רכיבים.