בדף הזה מופיע סיכום של התכונות העיקריות בגרסת Android 11, וקישורים למידע נוסף. סיכומי התכונות האלה מסודרים לפי המיקום של התיעוד של התכונה באתר הזה.
ארכיטקטורה
מכסות ל-API
בגרסה Android 11 הושקה התכונה 'מכסות API', שמגבילה את התדירות שבה אפליקציות יכולות לקרוא לממשקי API מסוימים. הוא מיושם רק בקריאות ל-API JobScheduler. כל שינוי שתבצעו במגבלות המוגדרות מראש עדיין צריך לעבור את בדיקת CTS. אפשר להשבית ולהפעיל מכסות של API באמצעות ה-method setEnabled ב-QuotaTracker.java. ההגדרה מופעלת כברירת מחדל. השבתת התכונה מאפשרת לאפליקציות לקרוא לממשקי ה-API המושפעים ללא הגבלה.
במאמר הזה מפורטות בדיקות יחידה של QuotaTracker ושל מחלקות שקשורות אליו. תיעוד מפורט מופיע בתגובות בכיתה QuotaTracker. התכונה הזו מציגה את LimitExceededException public API החדש.
תוכנת אתחול
גרסה 3 של כותרת האתחול
Android 11 תומך בגרסה 3 של כותרת האתחול. פרטים נוספים זמינים במאמר בנושא כותרת של תמונת אתחול.
מחיצות
מחיצות אתחול
ב-Android 11 הוצג המושג Generic Kernel Image (תמונת ליבה כללית). כדי לאפשר אתחול של מכשיר שרירותי באמצעות תמונת ליבה כללית, כל המידע הספציפי לספק מוסר ממחיצת האתחול ומועבר אל מחיצת אתחול של הספק. מכשיר שמושק עם Android 11 חייב לתמוך במחיצת vendor-boot ובפורמט המעודכן של מחיצת האתחול כדי לעבור את הבדיקות עם GKI.
כותרת האתחול של הספק
כותרת האתחול של הספק יכולה להיות ארוכה מעמוד אחד.
אכיפה של ממשקי חלוקת מוצרים
ב-Android 11, ה-productpartition מופרד, כך שהוא לא תלוי ב-system וב-vendor partitions. כחלק מהשינויים האלה, עכשיו אפשר לשלוט בגישה של מחיצת המוצר לממשקי Java ולממשקים מקוריים.
קובצי אימג' לשחזור
ב-Android 11 עודכנו הדרישות לגבי קובץ אימג' לשחזור מערכת ההפעלה, והתווספו אפשרויות חדשות שמבוססות על גרסה להכללת DTBO/ACPIO של השחזור כחלק מתמונת האתחול/השחזור. פרטים נוספים זמינים במאמר בנושא תמונות שחזור.
הפעלה מחדש רכה
Android 11 תומך בהפעלה מחדש רכה, שהיא הפעלה מחדש של תהליכים בזמן הריצה במרחב המשתמש, שמשמשת להחלת עדכונים שדורשים הפעלה מחדש (לדוגמה, עדכונים לחבילות APEX).
ליבה
ליבות נפוצות של Android
ב-Android 11 בוצעו שינויים משמעותיים באופן שבו ליבות נפוצות של Android מפותחות ומשולבות.
מעקב אחר ABI של ליבת Android
ב-Android 11 הושקו כלים למעקב אחר ABI כדי לייצב את ה-ABI בתוך ליבת ליבות Android.
תמונת ליבה גנרית
ב-Android 11 נוספה תמונת ליבה גנרית (GKI), שמטפלת בפיצול הליבה על ידי איחוד ליבת הליבה והעברת התמיכה ב-SoC ובלוח מחוץ לליבת הליבה למודולים שאפשר לטעון.
ליבות מודולריות
תמיכה במודול ליבה
יכול להיות שתמונת ליבה גנרית (GKI) לא תכיל את התמיכה הנדרשת במנהלי התקנים כדי לאפשר למכשיר לטעון מחיצות. כדי לאפשר למכשיר לטעון מחיצות ולהמשיך את האתחול, השלב הראשון של init משופר כדי לטעון את מודולי הליבה שקיימים ב-ramdisk.
דיסק ה-RAM מחולק לדיסק RAM כללי ולדיסק RAM של ספק.
מודולי ליבת הספק מאוחסנים ב-ramdisk של הספק. אפשר להגדיר את הסדר שבו מודולי הליבה נטענים.
DebugFS
ב-Android 11 הוסר התמיכה בפלטפורמה עבור DebugFS, ונדרש שלא תהיה גישה ל-DebugFS במכשירי ייצור. למרות ש-DebugFS נוצר למטרות ניפוי באגים, הוא נכלל בגרסאות build של משתמשים ושל usebug עבור רכיבים כלליים וספציפיים לספקים. הוצאה משימוש של DebugFS מתבצעת כי הוא יוצר:
ממשק API לא יציב ולא מתועד. כדי שמערכת Android תפעל בצורה תקינה, היא צריכה ממשקי ליבת לינוקס ו-HAL מוגדרים היטב ויציבים. בדיקות 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 v5.4 מציגה מסגרת להפיכת ערימות ION ספציפיות לספקים למודולריות, תוך שמירה על מנהל ההתקן המובנה של ION. כך יצרני ציוד מקורי (OEM) יכולים לשמור על שינויים במנהל ההתקן של ION בליבה כשמשתמשים בתמונת ליבה גנרית (GKI).
רכיבים למערכות מודולריות
ביטול אוטומטי של הרשאות
ב-Android 11, מודול PermissionsControllerיכול לבטל אוטומטית הרשאות בזמן ריצה לאפליקציות שלא נעשה בהן שימוש במשך תקופה ארוכה.
עדכונים של מודולים ראשיים
ב-Android 11 נוספו כמה מודולים חדשים ובוצעו עדכונים בכמה מודולים קיימים שהוצגו ב-Android 10.
חבילות של שכבות-על בזמן ריצה (RRO)
Android מגרסה 11 ואילך תומך במנגנון חדש ל-RRO. השיפורים כוללים מרחב מזהים שמור למשאבים, קובץ res/xml/overlays.xml לספירת משאבי היעד, כלל בנייה של Soong לשכבות-על וקובץ OverlayConfig להגדרת השינוי, מצב ברירת המחדל והעדיפות של שכבות-על.
Vendor NDK
תמונות מצב של ספקים
Android 11 תומך בפריטי בנייה של snapshot של VNDK ובsnapshots של ספקים, שאפשר להשתמש בהם כדי לבנות את 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 זמין בפרטי הגרסה של 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 כולל הטמעה מחודשת של HAL מצלמה מדומה במכשירים וירטואליים של Cuttlefish ושל אמולטור Android, שמוסיפה תמיכה בתכונות נוספות של המצלמה, כולל:
- צילום בפורמט 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) ואת המצב שנבחר באפליקציה ברכיב המאובטח.
גישה מהירה ל-Wallet
התכונה גישה מהירה לארנק מאפשרת למשתמשים לגשת לכרטיסי תשלום ולכרטיסים רלוונטיים ישירות מתפריט ההפעלה.
שיחות והודעות
התנהגות של שיחות חירום
ב-Android 11 בוצעו שינויים באופן הטיפול בשיחות חירום, כדי לתמוך טוב יותר בדרישות של ספקי הסלולר. בהמשך מפורט אופן הטיפול בשיחות חירום:
- כשמשתמש מבצע שיחת חירום בזמן שיחה פעילה, המכשיר מנתק אוטומטית את השיחה הפעילה או מעביר אותה להמתנה, ולא מאפשר לחזור אליה עד ששיחת החירום תנותק. הפעולה הזו תלויה בהגדרה של מקש
KEY_ALLOW_HOLD_CALL_DURING_EMERGENCY_BOOL. - במהלך שיחת חירום, שיחות נכנסות נדחות באופן אוטומטי ומוצגות למשתמש כשיחות שלא נענו. במהלך שיחת חירום פעילה, אי אפשר להוציא שיחות שאינן שיחות חירום.
- במצב 'התקשרות חזרה בחירום', אם מתקשרים למספר שאינו של שירותי חירום, המכשיר יוצא מהמצב הזה. אם מתבצעת שיחת חירום, המכשיר חוזר למצב 'התקשרות חזרה בחירום' כשהשיחה מסתיימת. שיחות נכנסות לא גורמות למכשיר לצאת ממצב 'התקשרות חזרה בחירום'.
- אי אפשר להחליף בין שיחות חירום פעילות או להעביר אותן למצב המתנה.
מאגר נתונים של מספרי חירום שאפשר לעדכן
ב-Android 11 נוסף מאגר נתונים של מספרי חירום שאפשר לעדכן באמצעות עדכוני OTA. מסד הנתונים מכיל רשימה של מספרי טלפון למקרי חירום עם המדינות וקטגוריות השירותים התואמות.
ספק
eSIM
תהליך הפעלת ה-eSIM דרך אפליקציית הספק
ב-Android 11, תהליך ההפעלה של פרופיל eSIM באמצעות אפליקציה של ספק השתפר. כשמשתמשים בקוד הפעלה כדי להוריד פרופיל, ה-LPA יכול להפעיל את ממשק המשתמש של אפליקציית הספק כדי לאחזר מידע נוסף מהמשתמש. אפליקציית הספק יכולה גם להפעיל את ממשק המשתמש של LUI כדי להפעיל פרופיל eSIM.
מידע נוסף זמין בכתובת:
טיפול בשגיאות ב-API של eUICC
ב-Android מגרסה 11 נוספו מפתחות וערכים כדי לשפר את הטיפול בשגיאות. כך, מי שקורא ל-eUICC API יכול לטפל בשגיאות ספציפיות בנפרד.
פרמטר האפשרויות של השיטה erase subscriptions
החל מ-Android 11, כשמשתמשים בשיטה eraseSubscriptions ב-EuiccManager, צריך לספק ערך enum של EuiccCardManager#ResetOption כדי לציין אם למחוק את כל המינויים מסוג בדיקה, מסוג הפעלה או משני הסוגים.
תמיכה ברשתות של כמה ספקי סלולר
מכשירים שמופעלים עם Android 11 יכולים לתמוך במספר רשתות ציבוריות ניידות יבשתיות (PLMN). התמיכה ב-PLMN מרובים מאפשרת למפעילים של רשתות סלולריות (MNO) לשדר זהויות מרובות, וכך מספקת להם גמישות.
תמיכה בתאים קטנים
מכשירים שהושקו עם Android 11 יכולים לספק תמיכה בקבוצות מנויים סגורות (CSG) באמצעות שיטות בממשקי ה-API לזיהוי תאים שמקבלים מידע על קבוצת מנויים סגורה של תא. האפשרות הזו שימושית למפעילי רשתות סלולריות (MNO) שמנהלים תאים קטנים באמצעות קבוצות מנויים סגורות.
Connectivity Diagnostics API
Connectivity Diagnostics API מאפשר לאפליקציות שהן הבעלים של רשתות או שמנהלות רשתות, כמו אפליקציות של ספקי סלולר, אפליקציות VPN ואפליקציות להצעות לחיבור Wi-Fi, לקבל מהמסגרת מידע אבחוני על קישוריות לרשת.
שינויים ב-Mobile API
ב-Android 11 נוספה פונקציונליות נוספת ל-Open Mobile API (OMAPI):
- כללי ניתוח להרשאות של ספקי סלולר.
התאמה אישית של גישה לרכיב מאובטח מוטמע (eSE) או הקצאת eSE באמצעות אחד או יותר מהבאים:
- SECURE_ELEMENT_PRIVILEGED_OPERATION הרשאת מערכת מיוחדת
- מזהי אפליקציות (AID) של אפליקציית הכלל הניתן להגדרה לגישה (ARA-M)
-
resetsystem API to reset OMAPI reader
לספק לקוראים אינדיקטור ברור לאפליקציות כדי לסנן את יכולות המכשיר.
דיווח על עוצמת האות
ב-Android 11, אפשר לבחור ולהתאים אישית כמה סוגים של מדידות אותות שהמסגרת תשתמש בהם כדי לדווח על עוצמת האות של רשתות גישה רדיו (RAN) מסוג 4G LTE ו-5G NR. לאחר מכן, תוכלו להשתמש בעוצמות האות שדווחו כדי לקבוע איך יופיעו פסי האות במכשירים שלכם.
Wi-Fi
הגדרות של רשת Wi-Fi של ספק
ב-Android 11, אפשר להשתמש ב-Wi-Fi suggestion API כדי להוסיף הגדרות של רשת Wi-Fi של ספק במקום להגדיר את הפרמטר carrier_wifi_string_array במנהל ההגדרות של הספק.
תמיכה בנקודת Wi-Fi לשיתוף אינטרנט (AP וירטואלי) לשיתוף אינטרנט בין מכשירים
ב-Android 11 הוספנו הגדרות משופרות של נקודת Wi-Fi לשיתוף אינטרנט (AP רך), כדי לספק תמיכה רחבה יותר בתרחישי שימוש ובהתאמות אישיות של ספקי סלולר. השינויים האלה מאפשרים ליצרני מכשירים להגדיר את הדברים הבאים:
- SSID ו-BSSID
- סוג אבטחה (כולל WPA3)
- SSID מוסתר
- פס הפעולה והערוץ (כולל ACS)
- מספר הלקוחות המקסימלי המותר
- הערך של הזמן הקצוב לכיבוי אוטומטי
- רשימת היתרים ורשימת חסימה כדי לאפשר למשתמשים לשלוט במכשירים המשויכים
שיפורים בבחירת רשת Wi-Fi
ב-Android 11 הוספנו שיפורים לבחירת רשת Wi-Fi כדי לשפר את הקישוריות לרשת Wi-Fi.
שיפורים ב-Passpoint של Wi-Fi
ב-Android 11 נוספו השיפורים הבאים לתכונה Passpoint:
- תמיכה בתפוגת פרופילים שמאפשרת למערכת להודיע למשתמש ולאכוף את תאריכי התפוגה של הפרופילים. כדי לעשות זאת, צריך ליצור פרופיל עם השדה
SubscriptionParameters/ExpirationDateמאותחל. - תמיכה באישור CA פרטי בחתימה עצמית לפרופילים של Passpoint R1.
- תמיכה בפרופילי Passpoint R1 ללא אישור CA. המערכת משתמשת במאגר האישורים שמוגדר כברירת מחדל כדי לאמת את החיבור.
- תמיכה בהגדרה של דומיין AAA עם שם בנפרד מ-ANQP FQDN (באמצעות הצומת
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) בסיסית של ספק משתנה, אם השם הנפוץ מצוין בעץ המשנה של התוסף האופציונלי Android. בגרסאות קודמות, אם משתנה רשות האישורים הבסיסית, המשתמשים צריכים להוריד פרופיל חדש מהספק.
נתונים
בקרת הרשאות גישה לנתונים
ב-Android 11 הושקה בדיקת גישה לנתונים, שמאפשרת למפתחי אפליקציות לזהות טוב יותר איך האפליקציות והתלויות שלהם ניגשות לנתונים פרטיים (כמו נתוני מיקום ונתוני מצלמה) של משתמשים. באפליקציות מורכבות ורב-תכליתיות, מפתחים יכולים להגדיר תגי שיוך כדי לזהות חלקים שונים באפליקציה.
מידע נוסף מופיע במאמר בנושא ביקורת על גישה לנתונים.
תצוגה
עדכונים ב-Bubbles notification API
ב-Android 10 הושק API של התראות בצורת בועות, שמאפשר למשתמשים לבצע כמה משימות במקביל מכל מקום במכשיר. Android 11 כולל כמה שיפורים ב'בועות'. השינויים הבולטים ביותר הם הפעלת הבועות כברירת מחדל והעברת ההגדרות מתוך האפשרויות למפתחים. לא נדרשת עבודה כדי להטמיע את הבועות בפלטפורמת Android.
ממשק השליטה במכשירים
התכונה 'ממשק השליטה במכשירים', שזמינה החל מ-Android 11, מאפשרת למשתמשים להציג ולשלוט במהירות במכשירים חיצוניים כמו מנורות, תרמוסטטים ומצלמות מתפריט ההפעלה. מצביעים של מכשירים (לדוגמה, Google Home) ואפליקציות של ספקים חיצוניים יכולים לספק מכשירים להצגה במרחב הזה. לא נדרשת עבודת הטמעה בפלטפורמה כדי לתמוך בתכונה הזו. ההטמעה שמוגדרת כברירת מחדל כלולה בממשק המשתמש של מערכת AOSP. מידע על הוספת תמיכה באמצעי בקרה למכשירים לאפליקציית הבקרה זמין בדף שליטה במכשירים חיצוניים למפתחי Android.
עדכונים במסווג הטקסט
ב-Android 11 נוסף יישום ברירת מחדל של שירות סיווג הטקסט שאפשר לעדכן, שנמצא במודול ExtServices Mainline. מומלץ ליצרני מכשירים להשתמש בהטמעה הזו של TextClassifierService כי אפשר לעדכן אותה באמצעות עדכוני OTA של Mainline.
Enterprise
הטמעה של סוגי משתמשים בהתאמה אישית
ב-Android 11 הוצג המושג של סוגי משתמשים מוגדרים היטב, שמייצגים את כל הסוגים השונים של משתמשים שמותרים על ידי התכונה 'משתמשים מרובים' ב-Android. התכונה הזו מאפשרת ליצרני ציוד מקורי (OEM) להתאים אישית סוגי משתמשים מוגדרים מראש ב-AOSP ולהגדיר סוגי פרופילים חדשים. מידע נוסף זמין בקטע בנושא סוגי משתמשים.
שיפורים בפרופיל העבודה
Android 11 כולל שיפורים בפרטיות ובשימושיות של פרופילי עבודה, שנועדו לתת מענה לאתגרים מרכזיים בשימושיות. חשוב שהשיפורים האלה ייושמו באופן עקבי בכל סביבת הפרסום.
מנהלי IT שתומכים ב-Android צריכים לתמוך בחוויית השימוש בכל מכשיר Android שהמשתמשים שלהם מביאים לעבודה. שיפור העקביות של חוויית המשתמש בתהליכי עבודה קריטיים מפחית באופן משמעותי את העלות של תמיכה ב-Android בסביבות BYOD. הטמעה עקבית של תכונות פרטיות במכשירים שונים גם מגבירה את אמון המשתמשים. בין העדכונים:
- רשימת האפליקציות כוללת כרטיסיות נפרדות עם הכיתוב 'אישי' ו'עבודה'.
- בכרטיסייה 'עבודה' יש מתג להשבתת פרופיל העבודה.
- כשפרופיל העבודה מושבת, הסמלים של האפליקציות לעבודה הופכים לאפורים, ובכרטיסייה 'עבודה' מופיעה שכבת-על עם הכיתוב 'האפליקציות לעבודה מושהות'.
אינטראקציה
עדכונים של סביבת זמן הריצה של Context Hub
ב-Android 11 מוצג CHRE API v1.4, שכולל תמיכה במידע על תאי 5G, בפריקת באגים של אפליקציות ננו ובשיפורים נוספים. הוא כולל גם תמיכה בשימוש ב-TensorFlow Lite for Microcontrollers באפליקציות ננו. מידע נוסף זמין במאמר Context Hub Runtime Environment (CHRE).
מגע
Android 11 כולל מדריך חדש בנושא הטמעה של משוב פיזי והערכה של הביצועים שלו במכשיר.
קלט
גיימפאדים
ב-Android 11 נוספה תמיכה בבקרי משחקים של צד שלישי, כולל:
Nintendo Switch Pro controller: מערכת Android מוסיפה תמיכה בחיבור USB ובחיבור Bluetooth ל-Nintendo Switch Pro controller. בדיקות CTS נדרשות לכל ההטמעות. צריך להשתמש ב-
NintendoSwitchProTestכדי לאמת את ההטמעה.בקר Steam: מערכת Android מוסיפה קישוריות USB לבקר Steam.
רשתות נוירונים
שיטות מומלצות
כדי לעודד מפתחי אפליקציות להשתמש ב-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 כולל כלי בדיקה לביצוע בדיקת fuzzing בהטמעות של דרייברים של NNAPI, וסדרה של בדיקות קריסה כדי לאמת את העמידות של דרייברים בתנאי שימוש אינטנסיביים.
מידע נוסף זמין בכתובת:
חיישנים
סוג חיישן זווית הציר
ב-Android 11 הוצג סוג חיישן זווית הציר לייצוג חיישן שמודד את הזווית בין שני חלקים אינטגרליים של מכשיר.
Sensors Multi-HAL 2.1
Sensors Multi-HAL 2.1, שזמין ב-Android 11, הוא איטרציה של Sensors Multi-HAL 2.0, שתומך בטעינה של רכיבי sub-HAL שיכולים לחשוף את סוג החיישן hinge angle. כדי לתמוך בסוג החיישן הזה, ממשקי sub-HAL צריכים להשתמש בממשקי sub-HAL API שמוגדרים בכותרת 2.1 SubHal.
מדיה
DRM
ב-Android 11 פשוט יותר להשתמש בנתיב MediaDrm/Crypto IPC כי MediaDrmService הוסר. נוסף API חדש של MediaDrm כדי למנות את הפלאגינים הזמינים של DRM.
פענוח עם זמן אחזור קצר ב-MediaCodec
Android 11 כולל את MediaCodec 2.0 כדי לאפשר פענוח מדיה עם זמן אחזור נמוך, שחשוב מאוד לאפליקציות בזמן אמת.
שונות
עדכון לדרישות של אפליקציית הגלריה ב-AOSP
החל מ-Android 11, אפליקציית הגלריה של AOSP לא נדרשת לתמוך בסוג ה-MIME application/sdp עבור כוונת ACTION_VIEW. מסנן Intent ACTION_VIEW לסוג ה-MIME application/sdp הוסר מקובץ המניפסט של אפליקציית הגלריה של AOSP.
הדרישות האלה מתועדות בסעיף 3.2.3.1. Core Application Intents של ה-CDD.
ביצועים
Userspace lmkd
ב-Android 11 מוצגת אסטרטגיה חדשה להפסקת פעולה של תהליכים כדי למנוע מחסור בזיכרון והידרדרות בביצועים.
הספק
מצב שינה לא פעיל בממיר לטלוויזיה
ב-Android 11, נוספה תכונה חדשה שנקראת 'מצב שינה במקרה של חוסר פעילות' למצב המתנה של הטלוויזיה. זוהי תכונה לחיסכון באנרגיה שמאפשרת להגדיר זמן קצוב לתפוגה של חוסר פעילות מצד המשתמש, שאחריו המכשיר עובר למצב שינה, גם אם מוחזקים נעילות השכמה.
מאובטח
OEMCrypto
Android 11 תומך בגרסה 16 של OEMCrypto API.
אחסון
נפח אחסון ייעודי לאפליקציות
מערכת 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 (version 1.1). HAL הזה חושף שיטות חדשות כדי לצמצם את היקף היומנים של הספקים שנכללים בדוחות באגים רגילים, וגם כדי לאפשר לבניית משתמשים להפעיל ולהשבית את הרישום ביומן של הספקים (ברירת המחדל לבניית משתמשים היא השבתה). כך יצרני ציוד מקורי מקבלים יותר שליטה על מה שנכלל בסוגים מסוימים של דוחות באגים.
GWP-ASan: זיהוי של נזק ל-heap
GWP-ASan היא תכונה של הקצאת זיכרון נייטיב שעוזרת למצוא באגים מסוג use-after-free ו-heap-buffer-overflow בתהליכים של 32-bit ו-64-bit.
GWP-ASan מופעל אוטומטית ב-Android 11 לאפליקציות מערכת ולקובצי הפעלה של הפלטפורמה. אל תשביתו את התכונה בפלטפורמה, והפעילו אותה באפליקציות שלכם.
עדכונים
שיפורים בעדכון מערכת דינמי (DSU)
Android 10 כולל שיפורים בעדכוני מערכת דינמיים (DSU), כולל:
- ממשק קצה חדש, טוען ה-DSU בלחיצה אחת
- תמיכה ב-DSU עם כמה מחיצות
- חבילות DSU חתומות על ידי יצרן ציוד מקורי (OEM), לאבטחה משופרת
- דרכים חדשות לניהול התאימות בין חבילות DSU למכשירים
חבילות OTA לכמה מק"טים
ב-Android מגרסה 11 ואילך יש תמיכה בשימוש בחבילת OTA אחת למספר מכשירים עם מק"טים שונים. כדי לעשות זאת, צריך להגדיר את מכשירי היעד לשימוש בטביעות אצבע דינמיות ולעדכן את המטא-נתונים של OTA (באמצעות כלי OTA) כך שיכללו את שם המכשיר ואת טביעת האצבע ברשומות של התנאים המוקדמים והתנאים שלאחר מכן.
חתימה על גרסאות build להפצה
כמה פקודות CLI לחתימה על גרסאות build להפצה השתנו ב-Android 11.
חבילת בדיקות של ספקים (VTS) 11
Android 11 Vendor Test Suite (VTS) מספק בדיקות מקיפות של ליבת המערכת ושל שכבת הפשטת החומרה (HAL).
בדיקת A/B וירטואלית
ב-Android 11, עדכוני A/B ועדכונים שאינם A/B מאוחדים באמצעות A/B וירטואלי. עדכוני A/B וירטואליים מאפשרים לבצע עדכונים במכשירים בצורה חלקה, תוך צמצום עלויות האחסון.
בדיקה
הקצאת זיכרון בערימה (heap allocator) של Scudo מוגדרת כברירת מחדל
החל מ-Android 11, נעשה שימוש במקצה הזיכרון של scudo heap לכל קוד Native (חוץ ממכשירים עם זיכרון נמוך, שבהם עדיין נעשה שימוש ב-jemalloc). לכן, אין יותר צורך להפעיל את scudo על בסיס בינארי. מידע נוסף על scudo זמין בדף בנושא scudo.
טלוויזיה
CAS framework
Android 11 תומכת במסגרת של מערכות גישה מותנית למדיה (Media CAS) ל-Android TV, שמספקת ממשקי API סטנדרטיים של Java למפתחים ול-OEM של צד שלישי. פרטים נוספים מופיעים במאמר בנושא מסגרת CAS.
מנהור מולטימדיה
ב-Android 11, המשתמשים יכולים להטמיע מנהור מולטימדיה עם תוכן אודיו ווידאו שמוזן ישירות מהטיונר.
Tuner framework
Android 11 תומך ב-Tuner Framework ל-Android TV, שמספק תוכן A/V באמצעות Tuner HAL, Tuner SDK API ו-Tuner Resource Manager.
TV Input Framework
מסגרת הקלט של Android TV (TIF) מפשטת את הצגת התוכן בשידור חי ב-Android TV, ומספקת יצרנים עם API סטנדרטי ליצירת מודולים של קלט לשליטה ב-Android TV, וכן מאפשרת חיפוש והמלצות של שידורי טלוויזיה בשידור חי. Android 11 מציג שלושה רכיבים חדשים ב-TIF.