נתוני הגרסה של Android 11

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

ארכיטקטורה

מכסות ל-API

במהדורה של Android 11 נוספה התכונה 'מכסות API', שמגבילה את התדירות שבה אפליקציות יכולות להפעיל ממשקי API מסוימים. הוא מיושם רק בקריאות API של JobScheduler. כל שינוי שתבצעו במגבלות המוגדרות מראש עדיין צריך לעבור את בדיקת CTS. אפשר להשבית ולהפעיל מכסות API באמצעות השיטה setEnabled בקובץ QuotaTracker.java. ברירת המחדל מופעלת. השבתת התכונה מאפשרת לאפליקציות לבצע קריאה לממשקי ה-API המושפעים ללא הגבלה.

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

תוכנת אתחול

גרסת 3 של כותרת האתחול

Android 11 תומך בגרסת 3 של כותרת האתחול. לפרטים נוספים, ראו כותרת של קובץ אימג' אתחול.

מחיצות

מחיצות אתחול

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

כותרת האתחול של הספק

כותרת האתחול של הספק יכולה להיות יותר מדף אחד.

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

ב-Android 11 מחיצות את המחיצה product, כך שהיא תהיה עצמאית מהמחיצות system ושל הספק. במסגרת השינויים האלה, עכשיו אפשר לשלוט בגישה של מחיצה המוצר לממשקים מקומיים ולממשקי Java.

קובצי אימג' לשחזור

ב-Android 11 מתעדכנות הדרישות לגבי קובץ האימג' לשחזור, והוא כולל אפשרויות חדשות שמבוססות על גרסה, להוספת קובץ DTBO/ACPIO לשחזור כחלק מקובץ האימג' של האתחול או השחזור. פרטים נוספים זמינים במאמר תמונות שחזור.

הפעלה מחדש חלקית

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

בועה

ליבות נפוצות של Android

ב-Android 11 יש שינויים משמעותיים באופן הפיתוח והשילוב של ליבות נפוצות של Android.

מעקב אחר ABI של ליבה של Android

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

Generic Kernel Image

ב-Android 11 מוצג Generic Kernel Image‏ (GKI), שמטפל בפיצול הליבה על ידי איחוד הליבה המרכזית והעברת התמיכה ב-SoC ובלוח מהליבה המרכזית למודול שניתן לטעינה.

ליבות מודולריות

תמיכה במודולים של ליבה

יכול להיות שתמונת הליבה הגנרית (GKI) לא תכלול את תמיכת הדרייבר הנדרשת כדי לאפשר למכשיר לטעון מחיצות. כדי לאפשר למכשיר לטעון את המחיצות ולהמשיך את האתחול, השלב הראשון של init משופר כדי לטעון את מודולי הליבה שנמצאים ב-ramdisk. דיסק ה-RAM מחולק לדיסק RAM כללי ולדיסק RAM של ספק. מודולי הליבה של הספק מאוחסנים ב-ramdisk של הספק. אפשר להגדיר את הסדר שבו מודולי הליבה נטענים.

DebugFS

ב-Android 11 הוסרה התמיכה בפלטפורמה של DebugFS, ואי אפשר לטעון אותה או לגשת אליה במכשירי ייצור. DebugFS נוצר למטרות ניפוי באגים, אבל הוא נכלל ב-builds של משתמשים ושל usedebug לרכיבים כלליים ורכיבים ספציפיים לספקים. אנחנו מוציאים משימוש את DebugFS כי הוא יוצר:

  • API לא יציב ולא מתועד. כדי לפעול כראוי, Android תלויה בממשקי HAL ובממשקי ליבה של Linux מוגדרים ויציבים. בדיקות VTS אוכפות את הנוכחות והתקינות של הממשקים האלה. אי אפשר לאכוף את DebugFS כי ה-ABI שלו לא יציב ולא מתועד.

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

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

ב-Android 11, ‏VTS אוכף את הדרישה ש-CONFIG_DEBUG_FS לא יופעל בתצורת הליבה של המכשיר ו-debugfs לא יופיע בקטע /proc/filesystems.

ערמות ION ל-GKI

ב-Android 11, ב-Android Common Kernel v5.4 מופיעה מסגרת ליצירת מודולים של ערמות ION ספציפיות לספק, תוך שמירה על מנהל ה-ION הליבה המובנה. כך יצרני ציוד מקורי יכולים לשמור על השינויים במנהל ליבה של ION כשהם משתמשים ב-Generic Kernel Image‏ (GKI).

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

ביטול אוטומטי של הרשאות

ב-Android 11, המודול PermissionsController יכול לבטל באופן אוטומטי הרשאות בסביבת זמן הריצה לאפליקציות שלא היו בשימוש במשך פרק זמן ארוך.

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

ב-Android 11 יש כמה מודולים חדשים ועדכונים של כמה מודולים קיימים שהוצגו ב-Android 10.

שכבות-על של משאבים בזמן ריצה

ב-Android מגרסה 11 ואילך יש מנגנון חדש ל-RRO. השיפורים כוללים מרחב שמורות למזהי משאבים, קובץ res/xml/overlays.xml לספירה של משאבי יעד, כלל build של Soong לשכבות-על, קובץ OverlayConfig להגדרת היכולת לשינוי, מצב ברירת המחדל והעדיפות של שכבות-על.

NDK של הספק

קובצי snapshot של ספקים

ב-Android 11 יש תמיכה בפריטי build של קובצי snapshot של VNDK ובקובצי snapshot של ספקים, שאפשר להשתמש בהם כדי ליצור את vendor.img ללא קשר לגרסה של Android בעץ המקור. כך אפשר להשתמש בגרסאות מעורבות של קובצי אימג', כמו קובץ אימג' ישן של ספק וקובץ אימג' חדש יותר של מערכת.

אודיו

כדי להקליט אודיו ממכשיר לכוונון תחנות FM, נדרשת הרשאה עם הרשאות מתקדמות

ב-Android 11, מקור האודיו MediaRecorder.AudioSource.RADIO_TUNER גלוי בתור @SystemApi, והשימוש בו בזמן צילום אודיו באמצעות AudioRecord או MediaRecorder מחייב הרשאת android.permission.CAPTURE_AUDIO_OUTPUT ברמה גבוהה

אפקטי אודיו

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

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

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

הטמעה

הטמעת אודיו

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

Automotive

פרטי הגרסה

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

USB Port Reset API

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

מצלמה

אפקט בוקה במצלמה

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

זום במצלמה

ב-Android 11, אפליקציה יכולה להשתמש בזום של המצלמה (אופטי ודיגיטלי) דרך ההגדרה ANDROID_CONTROL_ZOOM_RATIO. ההגדרה הזו היא גורם של נקודה צפה שמאפשרת דיוק טוב יותר של הזום בהשוואה לשימוש בערכי שלמים עם ההגדרה ANDROID_SCALER_CROP_REGION, והיא מאפשרת להרחיב את הזום (< 1.0f).

סטרימינג בו-זמנית ממצלמה

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

תמיכה משופרת במצלמה במכשירים וירטואליים של Android

ב-Android 11 נוספה הטמעה מחודשת של Camera HAL במכשירים הווירטואליים Cuttlefish ו-Android Emulator, שמאפשרת תמיכה בתכונות מצלמה נוספות, כולל:

  • צילום בפורמט RAW
  • עיבוד חוזר של YUV
  • מכשירים ברמה 3
  • תמיכה במצלמה לוגית
  • תמיכה במצלמה עם חיישן עומק בלבד

ה-HAL המאומלל של המצלמה נמצא בכתובת /platform/hardware/google/camera/devices/EmulatedCamera/hwl.

שיטות מומלצות לשימוש בכמה מצלמות

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

מצלמות מערכת

ב-Android 11 נוספה תמיכה במצלמות מערכת באמצעות ההרשאה android.permission.SYSTEM_CAMERA. מצלמות מערכת מאפשרות לכם להטמיע תכונות מצלמה שאפשר להשתמש בהן באפליקציות בעלות הרשאות או באפליקציות מערכת, אבל הן לא זמינות לאפליקציות ציבוריות של צד שלישי.

תאימות

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

קישוריות

Bluetooth ו-NFC

סנכרון תשלומים ב-NFC מחוץ למארח

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

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

ארנק גישה מהירה

התכונה Quick Access Wallet מאפשרת למשתמש לגשת לכרטיסי תשלום ולכרטיסים רלוונטיים ישירות מתפריט ההפעלה.

שיחות והודעות

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

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

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

מסד נתונים של מספרי חירום שניתן לעדכן

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

ספק

eSIM

תהליך ההפעלה של eSIM דרך אפליקציית הספק

ב-Android 11 משופר התהליך של הפעלת פרופיל eSIM דרך אפליקציית ספק. כשמשתמשים בקוד הפעלה כדי להוריד פרופיל, ה-LPA יכול להפעיל את ממשק המשתמש של אפליקציית הספק כדי לאחזר מידע נוסף מהמשתמש. אפליקציית הספק יכולה גם להפעיל את LUI כדי להפעיל פרופיל eSIM.

מידע נוסף זמין במאמרים הבאים:

טיפול בשגיאות ב-eUICC API

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

פרמטר אפשרות לשיטה למחיקת מינויים

החל מגרסה 11 של Android, כשמשתמשים בשיטה eraseSubscriptions ב-EuiccManager, צריך לספק ערך enum של EuiccCardManager#ResetOption כדי לציין אם למחוק את כל המינויים לבדיקה, את כל המינויים התפעוליים או את שני הסוגים של המינויים.

תמיכה ברשתות של מספר ספקים

במכשירים שיושקו עם Android 11 תהיה תמיכה במספר רשתות ציבוריות ניידות (PLMN). תמיכה במספר רשתות PLMN מספקת גמישות למפעילי רשתות ניידות (MNO), ומאפשרת להם לשדר כמה זהויות.

תמיכה בתאים קטנים

במכשירים שהושקו עם Android 11 יש תמיכה בקבוצות מנויים סגורות (CSG) באמצעות שיטות ב-API לזיהוי תאים שמקבלות מידע על פרטי ה-CSG של תא. האפשרות הזו שימושית למפעילי רשתות סלולריות (MNO) שמנהלים תאים קטנים באמצעות קבוצות סגורות של מנויים.

Connectivity Diagnostics API

Connectivity Diagnostics API מאפשר לאפליקציות שבבעלותן רשתות או שמנהלות אותן, כמו אפליקציות של ספקי סלולר, אפליקציות VPN ואפליקציות עם הצעות לרשתות Wi-Fi, לקבל מהמסגרת מידע אבחוני על קישוריות הרשת.

שינויים ב-Open Mobile API

ב-Android 11 נוספה פונקציונליות ל-Open Mobile API ‏ (OMAPI):

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

    • הרשאת הרשאות המערכת SECURE_ELEMENT_PRIVILEGED_OPERATION
    • מזהי אפליקציות (AID) של מאסטרים של כללי גישה שניתן להגדרה (ARA-M)
    • reset ממשק API למערכת לאיפוס קורא OMAPI
  • לספק לקוראים אינדיקטור ברור לאפליקציות לסינון יכולות המכשיר.

דיווח על עוצמת האות

ב-Android 11, אפשר לבחור ולהתאים אישית כמה סוגים של מדידת אותות, שבהם המסגרת תשתמש כדי לדווח על עוצמת האות של רשתות גישה לרדיו (RAN) מסוג 4G LTE ו-5G NR. לאחר מכן תוכלו להשתמש בעוצמות האות שדווחו כדי לקבוע איך מוצגות עמודות האות במכשירים שלכם.

Wi-Fi

הגדרות של רשת Wi-Fi של ספק

ב-Android 11, אפשר להשתמש ב-Wi-Fi suggestion API כדי להוסיף הגדרות של רשתות Wi-Fi של ספקי שירות instead of configuring the carrier_wifi_string_array parameter in the carrier config manager.

תמיכה בנקודת Wi-Fi לשיתוף אינטרנט (נקודת AP זמנית) לשיתוף אינטרנט בין מכשירים

ב-Android 11 יש הגדרה משופרת של נקודת Wi-Fi לשיתוף אינטרנט (נקודת גישה 'רכה'), שמספקת תמיכה רחבה יותר בתרחישי שימוש של ספקי סלולר ובהתאמות אישיות. השינויים האלה מאפשרים ליצרני המכשירים להגדיר את האפשרויות הבאות:

  • SSID ו-BSSID
  • סוג האבטחה (כולל WPA3)
  • SSID מוסתר
  • התדר והערוץ התפעוליים (כולל ACS)
  • המספר המקסימלי של לקוחות מורשים
  • הערך של הזמן הקצוב לתפוגה של כיבוי אוטומטי
  • רשימת היתרים ורשימת החסימות כדי לאפשר למשתמשים לשלוט במכשירים המשויכים

שיפורים בבחירת רשתות Wi-Fi

ב-Android 11 יש שיפורים בבחירת רשתות Wi-Fi כדי לשפר את הקישוריות לרשתות Wi-Fi.

שיפורים ב-Wi-Fi Passpoint

ב-Android 11 נוספו השיפורים הבאים לתכונה Passpoint:

  • תמיכה בתוקף הפרופיל, שמאפשרת למערכת להודיע למשתמש ולאכוף את תאריכי התפוגה של הפרופיל. לשם כך, צריך פרופיל שבו השדה SubscriptionParameters/ExpirationDate מיושם.
  • תמיכה באישורי CA פרטיים בחתימה עצמית לפרופילים של Passpoint R1.
  • תמיכה בפרופילים של Passpoint R1 ללא אישור CA. המערכת משתמשת במאגר האישורים שמוגדר כברירת מחדל כדי לאמת את החיבור.
  • תמיכה בהגדרת דומיין AAA בעל שם בנפרד מ-FQDN של ANQP (באמצעות הצומת Extension/Android ב-PPS-MO). כך אפשר לציין דומיין AAA ששונה מהדומיין המפורסם, בלי לפגוע באבטחת החיבור.
  • תמיכה במספר הגדרות Passpoint מותקנות עם אותו FQDN. האפשרות הזו שימושית לספקים שמפרסים ברשת שלהם יותר משילוב אחד של קוד מדינה לנייד (MCC) וקוד רשת לנייד (MNC), אבל יש להם רק FQDN אחד.
  • יכולת לזהות נקודות גישה מסוג Passpoint R3 ולאשר אותן.
  • התאמה משופרת של רשתות:
    • תמיכה בהתאמה לספק הבית עבור HomeSP/HomeOIList.
    • תמיכה בהתאמה לספק הבית עבור HomeSP/OtherHomePartners.
    • הסרת הדרישה להתאמה של שיטת EAP שלא נדרשת במפרט Passpoint.

תמיכה משופרת בשמות נפוצים בפרופילים של Wi-Fi

ב-Android 11, פרופילי Wi-Fi נשארים בתוקף כשרשות אישורים ברמה הבסיסית (CA) של ספק משתנה, אם השם הנפוץ מצוין ב-subtree האופציונלי של התוסף Android. בגרסאות קודמות, המשתמשים צריכים להוריד פרופיל חדש מהספק אם ה-CA ברמה הבסיסית משתנה.

נתונים

בקרת הרשאות גישה לנתונים

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

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

תצוגה

עדכונים ב-API של התראות בבועות

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

ממשק השליטה במכשירים

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

עדכונים של מסווג הטקסט

ב-Android 11 מופיעה הטמעה ברירת מחדל שניתן לעדכן של שירות סיווג הטקסט, שנמצאת במודול ExtServices Mainline. יצרני המכשירים מומלצים להשתמש בהטמעה הזו של TextClassifierService כי אפשר לעדכן אותה באמצעות עדכוני OTA של Mainline.

Enterprise

הטמעת סוגי משתמשים בהתאמה אישית

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

שיפורים בפרופיל העבודה

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

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

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

אינטראקציה

עדכונים בסביבת זמן הריצה של Context Hub

ב-Android 11 נוסף CHRE API v1.4, שכולל תמיכה במידע על תאים של 5G, דמפ של ניפוי באגים ב-nanoapp ושיפורים נוספים. היא כוללת גם תמיכה בשימוש ב-TensorFlow Lite for Microcontrollers ב-nanoapps. מידע נוסף זמין במאמר סביבה בסביבת זמן ריצה של Context Hub‏ (CHRE).

מגע

Android 11 כולל מדריך חדש בנושא הטמעת משוב מגע (haptics) והערכת הביצועים של משוב המגע במכשיר.

קלט

בקרי משחקים

ב-Android 11 נוספה תמיכה בבקרים של משחקים של צד שלישי, כולל:

  • Nintendo Switch Pro Controller: נוספה ל-Android תמיכה בחיבור USB וגם ב-Bluetooth ל-Nintendo Switch Pro Controller. בדיקת CTS נדרשת לכל ההטמעות. צריך להשתמש ב-NintendoSwitchProTest כדי לאמת את ההטמעה.

  • Steam controller: Android מוסיף קישוריות USB ל-Steam controller.

רשתות נוירונים

שיטות מומלצות

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

בקרת זרימה

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

הרצות מוגנות

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

דומיינים של זיכרון

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

איכות השירות

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

קצובת 8 ביט עם סימן

Neural Network HAL‏ (NN HAL) 1.3, שהוצג ב-Android 11, תומך בקידוד 8 ביט עם סימן עבור Neural Networks API. מידע נוסף זמין במאמר עדכוני NN HAL ב-Android 11.

שיפורים בבדיקות

גרסת Android 11 כוללת כלי בדיקה לביצוע בדיקות fuzz בהטמעות של מנהלי NNAPI, וכן סדרה של בדיקות התרסקות כדי לאמת את עמידות מנהלי ההתקנים בתנאים של שימוש כבד.

מידע נוסף זמין במאמרים הבאים:

חיישנים

סוג החיישן של זווית הציר

ב-Android 11 נוסף סוג של חיישן למדידת זווית ציר, שמייצג חיישן שמודד את הזווית בין שני חלקים חיוניים במכשיר.

Sensors Multi-HAL 2.1

Sensors Multi-HAL 2.1, שזמין ב-Android 11, הוא גרסה של Sensors Multi-HAL 2.0 שתומכת בחיישנים מסוג angle hinge. כדי לתמוך בסוג החיישן הזה, ממשקי HAL משניים חייבים להשתמש בממשקי ה-API של HAL משני שמוגדרים בכותרת 2.1 SubHal.

מדיה

DRM

ב-Android 11 הנתיב של MediaDrm/Crypto IPC פשוט יותר, כי הוסרו ממנו השירותים של MediaDrmService. נוספה פונקציית API חדשה מסוג MediaDrm כדי לרשום את יישומי הפלאגין הזמינים של DRM.

פענוח בזמן אחזור קצר ב-MediaCodec

Android 11 כולל את MediaCodec 2.0 כדי לאפשר פענוח מדיה עם זמן אחזור נמוך, שנחוץ לאפליקציות שפועלות בזמן אמת.

שונות

החל מגרסה 11 של Android, לא נדרשת תמיכה בסוג ה-MIME application/sdp באפליקציית הגלריה של AOSP עבור הכוונה ACTION_VIEW. מסנן הכוונה ACTION_VIEW לסוג ה-MIME application/sdp הוסר מקובץ המניפסט של אפליקציית AOSP Gallery.

הדרישות האלה מתועדות בקטע 3.2.3.1. 'כוונות הליבה של האפליקציה' של ה-CDD.

ביצועים

lmkd במרחב המשתמש

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

כוח

מצב שינה לא ממוקד למצב המתנה של הטלוויזיה

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

מאובטח

OEMCrypto

Android 11 תומך ב-OEMCrypto API בגרסה 16.

אחסון

נפח אחסון ייעודי לאפליקציות

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

הוצאה משימוש של SDCardFS

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

בדיקות

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

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

בדיקות CTS לממשקי API לניהול של APEX

החל מ-Android 11, החבילה CtsShimApex מכילה שתי אפליקציות מוכנות מראש ש-CTS משתמש בהן כדי לבדוק הרשאות ופרטי גישה.

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

פרטים נוספים זמינים במאמר חבילות CTS shim.

נתוני הגרסה של CTS

ב-Android 11 יש הרבה מודולים ושינויים בבדיקות של מפתחות.

ניפוי באגים

רישום ספקים ברמת ההיקף

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

GWP-ASan: זיהוי פגיעה ב-heap

GWP-ASan היא תכונה של מנהל זיכרון נייטיב שעוזרת למצוא באגים מסוג use-after-free ו-heap-buffer-overflow גם בתהליכים של 32 ביט וגם בתהליכים של 64 ביט.

GWP-ASan מופעל באופן אוטומטי ב-Android 11 לאפליקציות מערכת ולקובצי הפעלה של פלטפורמות. אל תשביתו אותו בפלטפורמה, והפעילו אותו באפליקציות.

עדכונים

שיפורים בעדכוני מערכת דינמיים (DSU)

ב-Android 10 יש שיפורים בעדכוני מערכת דינמיים (DSU), כולל:

  • ממשק קצה חדש, ה-loader של DSU בלחיצה אחת
  • תמיכה ב-DSU עם כמה מחיצות
  • קובצי DSU בחתימה של יצרן ציוד מקורי, לשיפור האבטחה
  • דרכים חדשות לניהול התאימות בין יחידות DSU למכשירים

חבילות OTA לכמה מק"טים

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

חתימה על גרסאות build להפצה

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

Vendor Test Suite‏ (VTS) 11

חבילת בדיקות של ספקים (VTS) ב-Android 11 מספקת בדיקה מקיפה של הליבה ושכבת האובייקטים המופשטים של החומרה (HAL).

בדיקת A/B וירטואלית

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

בדיקה

הקצאת זיכרון בערימה (heap allocation) של Scudo כברירת מחדל

החל מ-Android 11, הקצאת הזיכרון של scudo heap משמשת לכל הקוד המקומי (חוץ ממכשירים עם נפח זיכרון נמוך, שבהם עדיין נעשה שימוש ב-jemalloc). לכן אין יותר צורך להפעיל את scudo על בסיס בינארי. מידע נוסף על scudo זמין בדף Scudo.

טלוויזיה

מסגרת CAS

ב-Android 11 יש תמיכה במסגרת של מערכות גישה מותנות למדיה (Media CAS) ל-Android TV, שמספקת ממשקי API רגילים של Java למפתחים של צד שלישי וליצרני ציוד מקורי (OEM). לפרטים נוספים, ראו CAS Framework.

מנהור מולטימדיה

ב-Android 11, משתמשים יכולים להטמיע מנהור מולטימדיה עם תוכן אודיו ווידאו שמוזן ישירות מ-Tuner.

מסגרת הטיונר

Android 11 תומך ב-Tuner Framework ל-Android TV, שמספק תוכן A/V באמצעות Tuner HAL,‏ Tuner SDK API ו-Tuner Resource Manager.

TV Input Framework

Android TV Input Framework‏ (TIF) מפשט את העברת התוכן בשידור חי ל-Android TV, ומספק ממשק API סטנדרטי ליצרנים ליצירת מודולים של קלט לשליטה ב-Android TV, ומאפשר חיפוש של טלוויזיה בשידור חי והמלצות עליה. ב-Android 11 נוספו ל-TIF שלושה רכיבים חדשים.