נתוני הגרסה של Android {7/}12 ו-Android 12L

בדף הזה מופיע סיכום של התכונות העיקריות בגרסאות Android 12 ו-Android 12L, וקישורים למידע נוסף. סיכומי התכונות האלה מסודרים לפי המיקום של התיעוד של התכונה באתר הזה.

ארכיטקטורה

עדכונים בכיתה AlwaysOnHotwordDetector

החל מ-Android 12,‏ AlwaysOnHotwordDetector class, כולל factory method,‏ android.service.voice.VoiceInteractionService.createAlwaysOnHotwordDetector(), הוא API של המערכת (@SystemApi) ולא API ציבורי. המחלקות AlwaysOnHotwordDetector מיועדות לשימוש באפליקציות של Assistant עם הרשאות ברמת המערכת, שבדרך כלל מצורפות לגרסת מערכת ההפעלה. ב-Android 11 ובגרסאות קודמות, ה-API מוגן על ידי בדיקות שמבטיחות שהמתקשר הוא אפליקציית Assistant שפעילה כרגע, ולכן אפליקציות אחרות של צד שלישי לא יכולות להשתמש ב-API.

בנוסף, Android 12 כולל שיפורים בתכונת הפעלת המכשיר באמצעות קול כדי לשפר את השיוך והאכיפה של הרשאות שקשורות לשימוש במיקרופון באמצעות Sound Trigger API. השימוש במיקרופון, כולל שימוש עקיף כמו דרך המחלקות SoundTriggerManager או AlwaysOnHotwordDetector, משויך לחבילה המקורית (אפליקציית Assistant) שקוראת למחלקה AlwaysOnHotwordDetector. כך משפרים את הפרטיות של המשתמשים ואת השקיפות בחבילות שמשתמשות במיקרופון. ב-Android 11 ובגרסאות קודמות, השימוש במיקרופון משויך למשתמש המערכת כי החבילה המקורית לא משתמשת ב-sound trigger API ישירות, אלא דרך שירותים ברמה גבוהה יותר שנמצאים בתהליך system_server.

ההשפעה של השינויים האלה היא כדלקמן:

  • אפליקציות שאינן אפליקציות מערכת שמשתמשות ב-class‏ AlwaysOnHotwordDetector לא מצליחות לעבור קומפילציה מול Android 12 API כי ה-API הוסר מהמשטח הציבורי.
  • יכול להיות שיימנע מאפליקציות מערכת קיימות שמשתמשות במחלקה AlwaysOnHotwordDetector להשתמש בתכונות של הפעלת קול בזמן ריצה. כדי לפתור את הבעיה הזו ולאפשר לאפליקציות האלה לגשת למיקרופון באמצעות הפעלה קולית, צריך להצהיר על ההרשאות RECORD_AUDIO ו-CAPTURE_AUDIO_HOTWORD עבור האפליקציות האלה.

תמיכה בשפת Rust ב-Android

‫Android 12 תומך עכשיו בשימוש בקוד Rust. נוסף קטע חדש למסמכי התיעוד בנושא הגדרה, שמספק הנחיות לפיתוח ב-Android באמצעות Rust.

מידע נוסף על Android Rust, על מודולים שונים ועל דוגמאות (וגם מידע על הגדרת IDE) זמין בקטע החדש בנושא Android Rust במאמר מבוא ל-Android Rust.

כותרת של קובץ אימג' לאתחול

ב-Android 12 נוסף שימוש בגרסה 4 של כותרת תמונת האתחול, שהיא תמונת האתחול הראשית למכשירים שתומכים בארכיטקטורה של תמונת ליבה גנרית (GKI). ב-Android 12 יש גם boot_signature לבדיקת התקינות של ליבת המערכת ושל ה-ramdisk. הבדיקה, שמתבצעת ב-VtsSecurityAvbTest, נדרשת למכשירים שמשתמשים בארכיטקטורת GKI.

מידע נוסף זמין בדף כותרת של תמונת אתחול.

שינויים בהטמעה של bootconfig

התכונה bootconfig ב-Android 12, מנגנון להעברת פרטי הגדרה מה-build ומטוען האתחול אל Android 12, מחליפה את האפשרויות של androidboot.* kernel cmdline ששימשו ב-Android 11 ובגרסאות קודמות. התכונה הזו מאפשרת להפריד בין פרמטרים של הגדרות למרחב המשתמש ב-Android לבין פרמטרים של הגדרות לליבה.

מידע נוסף זמין במאמר הטמעה של Bootconfig.

גופן חלופי מותאם אישית

לפני Android 12, כדי לעדכן קובצי גופנים שהותקנו במכשיר ב-AOSP (במחיצה /system/fonts) או במחיצות הספק (במחיצות /product/fonts או /system/fonts), היה צורך בעדכון מערכת מהיצרן. לדרישה הזו יש השפעה משמעותית על התאימות של האמוג'י. ב-Android 12 אפשר להשתמש בשירות המערכת FontManager כדי לנהל קבצי גופנים מותקנים ולעדכן קבצי גופנים מותקנים במכשיר בלי לבצע עדכון מערכת.

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

DMA-BUF Heaps

ב-Android 12, ‏ GKI 2.0 מחליף את ION allocator ב-DMA-BUF heaps.

הפעלת מסנני לוקאל

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

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

דיסקים וירטואליים של ספקי פלאש

ב-Android 12 נוסף תמיכה בצריבת ramdisk של ספק באמצעות פקודת fastboot ששולפת את תמונת vendor_boot המלאה ממכשיר. הפקודה מנחה את כלי fastboot בצד המארח לקרוא את כותרת האתחול של הספק, ליצור מחדש את קובץ האימג' ולהעביר את קובץ האימג' החדש. התמיכה הזו כוללת שינויים ב-bootloader וב-fastbootd כדי לקבל את הנתונים הדרושים, כמו גודל המחיצה וההיסט.

מידע נוסף זמין במאמר Flashing vendor ramdisks בדף Fastboot in Userspace.

ניהול גרסאות של GKI

החל מ-Android 12, אפשר לחלץ את החלק של גרסת Android מגרסת ה-KMI ולהוסיף אותו למניפסט המכשיר בזמן הבנייה.

פרטים נוספים זמינים במאמר ניהול גרסאות של GKI.

אירועים של MM – נתונים סטטיסטיים היסטוריים של הזיכרון

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

למידע על שימוש בנתונים הסטטיסטיים של mm_events, ראו אירועי MM – נתונים סטטיסטיים היסטוריים של זיכרון.

הגבלות על חלון התראת מערכת

כדי לשפר את האבטחה של הסביבה העסקית של Android, ב-Android 12 הקשנו על קבלת ההרשאה SYSTEM_ALERT_WINDOW ואפשרנו לאפליקציות צד שלישי לחסום שכבות-על מאפליקציות צד שלישי אחרות.

באפליקציות שמותקנות מראש לא מוענקת באופן אוטומטי ההרשאה SYSTEM_ALERT_WINDOW appOp ב-Android 12. המשתמשים צריכים להעניק את ההרשאה באופן מפורש לפני שאפליקציה שמותקנת מראש יכולה להשתמש בה. אפליקציות מערכת עדיין מקבלות את ההרשאה כברירת מחדל.

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

האפשרות HIDE_NON_SYSTEM_OVERLAY_WINDOWS(signature|privileged) הוצאה משימוש לטובת HIDE_OVERLAY_WINDOWS.

שינויים במחיצות האתחול של הספק

מכשירי Android 12 שמשתמשים בגרסה 4 של כותרת תמונת האתחול תומכים בכמה ramdisk של ספקים במחיצה vendor_boot. הקטעים האלה של ramdisk משורשרים באופן סדרתי בקטע vendor ramdisk. טבלת ramdisk של ספק מתארת את הפריסה של קטע ה-ramdisk של הספק ואת המטא-נתונים של כל מקטע ramdisk של הספק.

בגלל השינויים במחיצות האתחול של הספק ב-Android 12 ומעלה, אי אפשר להשתמש ב-default כשם של קטע ramdisk של הספק. השם הזה שמור. אסור להשתמש בו כדי לתת שמות לחלקים של ramdisk של ספקים בשום מקרה.

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

אודיו

ניתוב משולב של אודיו

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

מידע נוסף מופיע בדף בנושא ניתוב משולב של אודיו במכשיר.

עדכונים ב-Audio HAL V7

כדי לפתור בעיות של תאימות לאחור, חובה להשתמש ב-Stable AIDL בכל השינויים ב-HAL החל מ-Android 13. כדי להתכונן למעבר ל-AIDL ולשפר אותו בעתיד, בוצעו שינויים משמעותיים בגרסה 7 של Audio HAL ב-Android 12.

מידע נוסף זמין בקטע Updates to the Audio HAL V7 ובדוגמה למדיניות אודיו.

מצלמה

רשומה של מטא-נתונים סטטיים של המצלמה למכשירים מתקפלים

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

מידע מפורט יותר זמין במאמר metadata_definitions.xml.

דרישה לתמיכה בתוסף ספק CameraX

ב-Android 12, במכשירים שתומכים בתוספים של CameraX, צריך להגדיר את המאפיין ro.camerax.extensions.enabled לערך true, כדי לאפשר שאילתה לגבי התמיכה של המכשיר בתוספים.

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

תמיכה בחיישן מצלמה מסוג Quad bayer

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

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

תאימות

דרישת תמיכה ב-ADN לכרטיסי SIM

החל מ-Android 12, כל כרטיסי ה-SIM במכשירים שמשמשים לבדיקות CTS צריכים לתמוך באחסון של מספרי חיוג מקוצרים (ADN).

פרטים נוספים זמינים במאמר בנושא מסך ואחסון.

עדכונים של Camera ITS

ב-Android 12 יש עדכונים שונים ל-Camera Image Test Suite (ITS), כולל בדיקות חדשות ומעודכנות, שינוי מבנה ל-Python 3 ואימוץ של מסגרת הבדיקה Mobly.

מידע נוסף זמין בנתוני הגרסה של חבילת הבדיקה של תמונות המצלמה ב-Android 12.

עדכונים בנושא CDD

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

קישוריות

פיצול של רשת 5G

‫Android 12 מספק תמיכה בפילוח רשת 5G, שימוש בווירטואליזציה של רשת כדי לחלק חיבורי רשת בודדים לחיבורים וירטואליים נפרדים רבים שמספקים כמויות שונות של משאבים לסוגים שונים של תנועה. כך מפעילים של רשתות יכולים להקצות חלק מהרשת כדי לספק תכונות ספציפיות לפלח מסוים של לקוחות.

מידע נוסף זמין במאמר בנושא פיצול של רשת 5G.

פרופילים של שיוך מכשירים לאפליקציות נלוות

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

צילום מסך של טלפון שבו מוצגת בקשה למתן הרשאות

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

מידע נוסף זמין במאמר בנושא פרופילים של מכשירים נלווים.

הרשאה לשירות IMS ‏ (TS.43)

‫Android 12 כולל תמיכה בהגדרת הרשאות לשירות TS.43, מפרט של GSMA שמגדיר את שלב אימות ההרשאות להפעלת שירותים, כולל Voice-over-Wi-Fi (VoWiFi),‏ Voice-over-LTE (VoLTE),‏ SMS over IP (SMSoIP),‏ On-Device Service Activation (ODSA) של מכשירי eSIM נלווים (שמשויכים למכשיר שממנו נשלחת הבקשה) ומידע על תוכנית נתונים.

מידע נוסף מופיע במאמר IMS Service Entitlement.

רישום יחיד ב-IMS

ב-Android 12 נוספה תמיכה במודל רישום יחיד כדי לספק תכונות של MMTEL ו-RCS. המודל הזה מאפשר למכשירים לנהל את כל התכונות של IMS באמצעות רישום יחיד ל-IMS שמסופק על ידי ImsService של המכשיר. בהשוואה למודל רישום כפול, שבו כמה רישומים של IMS מנוהלים במכשיר אחד, רישום יחיד מצמצם את התנועה ברשת של הספק ומגביר את המהימנות.

מידע נוסף זמין במאמר בנושא רישום יחיד ב-IMS.

זיהוי אזור הזמן של המיקום

‫Android 12 כולל את התכונה 'זיהוי אזור הזמן של המיקום' – תכונה אופציונלית לזיהוי אוטומטי של אזור הזמן, שמאפשרת למכשירים להשתמש במיקום שלהם ובנתוני מפת אזורי הזמן כדי לקבוע את אזור הזמן הנוכחי.

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

רנדומיזציה של כתובות MAC

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

מידע נוסף זמין במאמר בנושא התנהגות אקראית של כתובות MAC.

בחירת רשת

ב-Android 12 מוצג מנגנון חדש לבחירת רשת באמצעות המחלקה NetworkScore. בחירת הרשת משפיעה על האופן שבו מערכת Android ממלאת בקשות לרשת של אפליקציות ומערכת, ומשפיעה על האופן שבו נבחרת רשת ברירת המחדל לאפליקציה.

מידע נוסף זמין במאמר בנושא בחירת רשת.

Notification CallStyle

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

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

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

עדכונים ב-Passpoint

ב-Android 12 נוספו Passpoint R3 ותכונות אחרות של Passpoint, כמו תנאים והגבלות, כתובות URL של פרטי המקום, קידומות זהות מעוצבות וטיפול בהפסקת אימות קרובה.

מידע נוסף על התכונות האלה זמין במאמר בנושא Passpoint (Hotspot 2.0).

עדכונים לגבי גישה מהירה ל-Wallet

ב-Android 12 ואילך, התכונה 'גישה מהירה ל-Wallet' זמינה ממרכז הבקרה במקום מתפריט ההפעלה כמו ב-Android 11. ממשק המשתמש של Wallet פועל עכשיו בממשק המשתמש של המערכת, והוא נמצא ב-frameworks/base/packages/SystemUI/src/com/android/systemui/wallet.

מידע נוסף זמין במאמר בנושא גישה מהירה ל-Wallet.

חוויית משתמש פשוטה יותר בקישוריות

ב-Android 12 יש חוויית קישוריות אופציונלית ופשוטה יותר, שעוזרת למשתמשים להבין טוב יותר את חיבורי הרשת שלהם, לעבור בין ספקי אינטרנט ולפתור בעיות בקישוריות לרשת.

מידע נוסף זמין במאמר בנושא ממשק משתמש של קישוריות.

עדיפות של מקור זמן

החל מ-Android 12, מסגרת העבודה נותנת עדיפות למקור הזמן Network Time Protocol ‏ (NTP) על פני המקור Network Identity and Time Zone ‏ (NITZ) כברירת מחדל.

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

כדי להשבית את רשת 2G, צריך ללחוץ על לחצן החלפת המצב

כדי לשפר את האבטחה, ב-Android 12 נוסף מתג 2G בהגדרות שמאפשר למשתמשים להשבית לגמרי חיבורים סלולריים של 2G. כדי להשתמש בתכונה הזו, צריך להטמיע את Radio 1.6 HAL.

התכונה 'החלפה בין מצבים של רשת 2G' מופעלת כברירת מחדל. ספקי סלולר יכולים להשבית את התכונה בזמן הריצה באמצעות ה-flag‏ CarrierConfig‏ KEY_HIDE_ENABLE_2G.

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

מפרט UICC

ב-Android 12, כדי להריץ את הבדיקות של CTS carrier API, המכשיר צריך להשתמש ב-UICC למפתחים עם הרשאות CTS carrier שעומד בדרישות שצוינו בגרסה העדכנית של GSMA TS.48 Test Profile של צד שלישי.

מידע נוסף זמין במאמר בנושא הכנת כרטיס ה-UICC.

נקודת גישה ל-Wi-Fi/מקבילות של נקודות גישה

ב-Android 12 הוצגה התכונה 'מקביל ל-Wi-Fi AP/AP', שמאפשרת למכשירים להפעיל נקודה חמה עם שיתוף אינטרנט (tethering) של שני גשרים (AP+AP).

מידע נוסף זמין במאמר Wi-Fi AP/AP Concurrency.

מניעת חפיפה בין ערוצי Wi-Fi וסלולר

ב-Android 12 הוצגה התכונה Wi-Fi/cellular coex channel avoidance, שמזהה ערוצי Wi-Fi לא בטוחים ומונעת את השימוש בהם כשיש הפרעות בין ערוצים סלולריים. זה כולל ממשקים כמו STA, ‏ SoftAp, ‏ Wi-Fi Direct (P2P), ‏ Wi-Fi Aware (NAN).

שיפורים בפרוטוקול האבטחה של Wi-Fi

ב-Android 12 נוספה תמיכה ב-WPA3 Hash-to-Element ‏ (H2E), במצב מעבר של WPA2/WPA3-Enterprise ובסימון של השבתת המעבר.

מידע נוסף זמין במאמר בנושא WPA3 ו-Wi-Fi Enhanced Open.

מקבילות של Wi-Fi STA/STA

ב-Android 12 הוצגה התכונה 'מקבילות STA/STA של Wi-Fi', שמאפשרת למכשירים להתחבר לשתי רשתות Wi-Fi בו-זמנית.

מידע נוסף זמין במאמר בנושא Wi-Fi STA/STA Concurrency.

מכשירים

תכונות חדשות ב-Android 12 לרכב

מידע נוסף על התכונות החדשות האלה זמין במאמר מה חדש ב-Automotive:

מסך

חסימת נגיעות לא אמינות

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

התראות על שיחות ווידג'טים של שיחות

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

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

טשטוש חלונות

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

מידע נוסף על התכונה החדשה הזו ועל אופן ההטמעה שלה זמין בדף טשטוש חלונות.

הגדלת חלון

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

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

Enterprise

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

‫Android 12 כולל את העדכונים הבאים לניהול מכשירים:

  • עדכונים בנושא הפרדה של נתונים בפרופילים מנוהלים. במכשירים אישיים עם פרופיל עבודה, Android 12 מסיר את הגישה למזהי חומרה של המכשיר (IMEI, ‏ MEID, מספר סידורי) ומספק מזהה ייחודי שספציפי לרישום, שמזהה את הרישום של פרופיל העבודה לארגון מסוים. לפרטים נוספים, אפשר לעיין במאמר בנושא מזהי מכשירים.

  • עדכונים בהקצאת מכשירים (Provisioning). ‫Android 12 כוללת כמה שינויים בהקצאת הרשאות למכשירים. פרטים ורשימת שינויים זמינים במאמר בנושא עדכונים ל-Android 12.

גרפיקה

טיפול בהחלפה חמה ב-Composer HAL

יכולות התצוגה (כמו מצבי תצוגה וסוגי HDR נתמכים) יכולות להשתנות באופן דינמי במכשירים שמחוברים אליהם מסכים חיצוניים (באמצעות HDMI או DisplayPort), כמו ממירים של Android TV ומכשירים במודל 'ישירות ללקוח' (OTT). מגרסה Android 12 ואילך, יש שינויים בתמיכה של framework בטיפול בהוספה והסרה של רכיבים בזמן שהמערכת פועלת (hot plug) וביכולות דינמיות של המסך.

מידע נוסף זמין במאמר בנושא טיפול בהוספה והסרה של רכיבים בזמן שהמחשב פועל ב-Composer HAL.

רכיבים של מערכת מודולרית

‫Android 13 כוללת כמה רכיבי מערכת מודולריים חדשים ומעודכנים. המודולים החדשים הם:

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

  • Device Scheduling: המודול הזה מכיל לוגיקה שמזהה אם המכשיר במצב לא פעיל ואפשר להפעיל אותו מחדש בלי להפריע למשתמש.

עדכונים במודולים קיימים:

  • adbd: עודכן הגבול של המודול.

  • DocumentsUI: השבתה של גלישה בקבצים.

  • ExtServices: נוסף DisplayHashingService ועודכן גבול המודול.

  • מדיה: נוסף רכיב מדיה חדש.

  • NNAPI Runtime: עודכן גבול המודול.

  • PermissionController: הפכנו את מודול PermissionController למודולרי לחלוטין ועדכנו את הגבולות של המודול.

  • SDK Extensions: עודכנה האחריות של המודול ונוסף רכיב חדש.

  • Statsd: עודכן הגבול של המודול.

  • Tethering: Added functionality updated the module boundary.

  • נתוני אזור זמן: עודכן פורמט החבילה.

  • Wi-Fi: עודכן הגבול של המודול.

מדיה

המרת קידוד למדיה תואמת

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

ביצועים

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

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

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

שכבת הפשטה של cgroup

שכבת ההפשטה של קבוצת הבקרה (cgroup) ב-Android 12 כוללת תכונות חדשות, כמו האפשרות להגדיר בקרי cgroup ספציפיים כאופציונליים, ולהשתמש בפקודה חדשה task_profiles שמחליפה את הפקודה writepid שהוצאה משימוש. ההחלפה הזו מבטיחה שהטמעות בסיסיות של cgroup לא ישפיעו על השכבות העליונות כשמעבירים משימות בהיררכיות של cgroup. ב-Android 12 נוספה גם תמיכה בפרופילים של משימות לפי רמת API.

מידע נוסף זמין במאמר בנושא Cgroup Abstraction Layer.

הרשאות

הרשאות Bluetooth

ב-Android 12 נוספו הרשאות Bluetooth חדשות שמחליפות את ההרשאות BLUETOOTH ו-BLUETOOTH_ADMIN:

  • BLUETOOTH_SCAN: מאפשרת לאפליקציות לגלות מכשירי Bluetooth בקרבת מקום ולבצע התאמה איתם.
  • BLUETOOTH_ADVERTISE: האפליקציה תוכל לפרסם במכשירי Bluetooth בקרבת מקום.
  • BLUETOOTH_CONNECT: מאפשר לאפליקציות להתחבר למכשירי Bluetooth שהותאמו.

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

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

מידע נוסף על השימוש בהרשאות זמין במאמר בנושא הרשאות Bluetooth.

אינדיקטורים של פרטיות

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

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

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

מיקום

החל מ-Android 12, המשתמשים יכולים לבקש שאפליקציה תקבל רק מיקום משוער כשהיא ניגשת לפרטי המיקום.

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

זמן ריצה

בדיקות של Dexpreopt ושל <uses-library>

ב-Android 12 יש שינויים במערכת הבנייה של קובצי DEX (dexpreopt) של מודולי Java עם תלויות <uses-library>, שמתבצעת מראש (AOT). במקרים מסוימים, שינויים במערכת הבנייה עלולים לגרום לכך שהבנייה תיכשל.

במאמר בדיקות Dexpreopt ו-<uses-library> מוסבר איך להתכונן למקרים של תקלות, ומופיעות בו הוראות לתיקון ולמניעה שלהן.

בדיקות

חבילה לבדיקות תאימות (CTS)

ב-Android 12, נוספו הרבה מודולים חדשים של מפתחות ושינויים בבדיקות ל-CTS. מידע נוסף זמין בהערות הגרסה של CTS.

טלוויזיה

שירות בקרה של HDMI-CEC

ב-Android 12 נעשה שימוש ב-HDMI-CEC כדי לשלוט אוטומטית במסכים שמחוברים באמצעות HDMI כשמכשיר מתעורר או עובר למצב שינה.

פרטים נוספים זמינים במאמר בנושא שירות בקרת HDMI-CEC.

Tuner framework

ב-Android 12:

  • החלק הקדמי עם Tuner HAL מגרסה 1.1 ואילך תומך בתקן DTMB DTV. היכולות וההגדרות הבאות של ממשק המשתמש נתמכות:

    • DtmbFrontendCapabilities

    • DtmbFrontendSettings

  • ה-API של Tuner SDK תומך בתכונות חדשות ב-Tuner HAL 1.1, שהוא שדרוג גרסה עם תאימות לאחור של Tuner 1.0.

  • android.media.tv.tuner.TunerVersionChecker.getTunerVersion() בודק את גרסת ה-HAL שפועלת.

עדכונים

דחיסת APEX

אחרי שמתקינים עדכון של קובץ APEX (Android Pony EXpress), לא משתמשים יותר בגרסה שהותקנה מראש, אבל היא תופסת את אותו נפח זיכרון. השטח התפוס הזה לא יהיה זמין. ב-Android 12, דחיסת APEX מצמצמת את ההשפעה הזו על האחסון באמצעות שימוש בקבוצה דחוסה מאוד של קובצי APEX במחיצות לקריאה בלבד (כמו מחיצת /system). מידע על דחיסת APEX ב-Android 12 זמין במאמר Compressed APEXes.

אבטחה ונוחות של חידוש הפעלה אחרי אתחול

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

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

הפעלה חוזרת של קוד האימות של כרטיס ה-SIM באמצעות RoR

ב-Android 12 יש תכונה של הפעלה חוזרת של קוד הגישה ל-SIM לאימות חלק של קוד הגישה אחרי הפעלה מחדש שמתבצעת על ידי RoR.קוד הגישה ל-SIM מוצפן מחדש ונשמר בכל פעם שמשתמש מפעיל, מאמת או משנה אותו בהצלחה.

מידע נוסף זמין במאמר בנושא שידור חוזר של קוד אימות לכרטיס SIM.

עדכונים של ניסויי A/B וירטואליים

ב-Android 12 יש אפשרות לדחיסת A/B וירטואלית במחיצות של תמונות מצב. ב-Android 12, אפשר ליצור תמונת מצב של מחיצות שניתנות לעדכון ושמטען האתחול לא משתמש בהן, כדי לחסוך במקום. אפשר גם לדחוס אותם. הפעלת דחיסת תמונות מצב בגרסה שלכם ל-Android 12 חוסכת מקום במחיצה /data.

כדי להטמיע דחיסה של תמונות מצב של A/B וירטואלי, צריך לבצע שינויים בקוד שספציפי למכשיר. אפשר לראות את השינויים ואת פרטי ההטמעה בדפים סקירה כללית של בדיקות A/B וירטואליות והטמעה של בדיקות A/B וירטואליות.