גוגל השיקה פלטפורמה פתוחה למובייל. Android 17. Связанные с новым выпуском исходные тексты размещены в Git-репозитории проекта (ветка android-17.0.0_r1). Сборки прошивки подготовлены для устройств Pixel 6/6a/6 Pro, Pixel 7/7a/7 Pro, Pixel 8/8a/8 Pro, Pixel 9/9a/9 Pro/9 Pro XL/9 Pro Fold, Pixel 10/10 Pro/10 Pro XL/10 Pro Fold, Pixel Fold и Pixel Tablet. Предварительные сборки прошивок доступны для устройств HONOR, iQOO, Lenovo, OnePlus, OPPO, realme, Sharp, vivo и Xiaomi. В процессе формирования универсальные сборки GSI (Generic System Images), подходящие для разных устройств на базе архитектур ARM64 и x86_64.
Среди изменений (1, 2, 3):
- נוסף מצב חדש של מרובה חלונות, "בועות". הוא מאפשר לך להפעיל כל יישום בחלונות צפים, בדומה להתראות שכבת-על לשליחת הודעות ("בועות"), אך אינו קשור לממשק API ייעודי. פתיחת יישום בחלון צף מתבצעת על ידי לחיצה ארוכה על סמל היישום. במסכים גדולים יותר, סמלי חלונות צפים מופיעים באזור נפרד בשורת המשימות. ניתן לקבץ, להזיז ולהצמיד חלונות אלה למסך.

- פיתוח פלטפורמות עבור מכשירים עם מסכים גדולים, כגון טאבלטים, מחשבים ניידים, מחשבים שולחניים וסמארטפונים עם מסכים מתקפלים, נמשך. אפשרויות שהופעלו בעבר להשבתת התנהגות חדשה במכשירים עם מסכים רחבים מ-600 פיקסלים (dp) הוסרו. התנהגות זו הייתה קשורה להתעלמות מ-APIs מסוימים לניהול שינוי גודל וכיוון המסך (screenOrientation, resizeableActivity, [min|max]AspectRatio), וכן מיקום אדפטיבי של יישומים בחלונות הניתנים לשינוי גודל ונעים.


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

- Добавлен системный интерфейс выбора контакта из адресной книги, доступ к которому предоставляется при получении полномочия ACTION_PICK_CONTACTS. Интерфейс позволяет обойтись без предоставления полномочия READ_CONTACTS, позволяющего прочитать все контактные данные. При вызове нового интерфейса пользователь принимает решение о том, какую именно информацию из адресной книги передать приложению с возможностью выбора только отдельных полей.

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

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

- נוספה הגדרה המאפשרת לך להסתיר את תצוגת שמות היישומים מתחת לסמלים שלהם.


- עיצוב סרגל הכלים של הקלטת המסך שונה.

- Добавлена поддержка экранных реакций (Screen Reactions), совмещающих запись видео с передней камеры с созданием скринкаста для наложения своих комментариев к действиям на экране.
- Добавлен режим для игр на устройствах со складными экранами, при котором одна половина раскладного экрана используется для отображения игрового процесса, а другая для виртуального геймпада.

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

- הטמענו חלונות מעוגנים אינטראקטיביים, שבניגוד לחלונות תמונה בתוך תמונה מסורתיים, נשארים אינטראקטיביים כאשר הם מעוגנים מעל יישומים אחרים במצב שולחן עבודה.
- שני ממשקי API חדשים נוספו: ממשק ה-API של UWB DL-TDOA לקביעת מיקום של מכשיר בתוך בניין באמצעות Wi-Fi לניווט פנימי; וממשק ה-API של זיהוי קירבה לגילוי מכשירים בקרבת מקום באמצעות Wi-Fi.
- נוספה תמיכה בפורמט הווידאו VVC (קידוד וידאו רב-תכליתי), המכונה גם תקן דחיסת הווידאו H.266, שפותח במשותף על ידי קבוצות העבודה MPEG (ISO/IEC JTC 1) ו-VCEG (ITU-T), בהשתתפות חברות כמו Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm וסוני. H.266 מחליף את H.265 (HEVC) ומספק שידור ואחסון יעילים ביותר עבור כל רזולוציות המסך (מ-SD ו-HD ועד 4K ו-8K), תומך בוידאו High Dynamic Range (HDR) ובווידאו פנורמי של 360 מעלות.
- נוספה היכולת להקליט וידאו ברמת איכות קבועה. מצב זה מוגדר באובייקט MediaRecorder באמצעות המתודה setVideoEncodingQuality(), המאפשרת לך לנעול את רמת האיכות ללא קשר לקצב הסיביות.
- Добавлена поддержка формата изображений RAW14, применяемого в профессиональных цифровых камерах и обеспечивающего хранение 15 бит на цветовой канал.
- Добавлено поддержка формата HDR-видео Eclipsa Video.
- נוסף מקודד תוכנה עבור פורמט האודיו HE-AAC (קידוד שמע מתקדם ביעילות גבוהה), התומך בקצבי סיביות נמוכים וגבוהים כאחד.
- הרשאה חדשה, ACCESS_LOCAL_NETWORK, נוספה כדי להגביל את גישת האפליקציות לרשת המקומית. הרשאה זו מאפשרת לאפליקציות לזהות ולהתחבר למכשירים ברשת המקומית, כגון מכשירי בית חכם ומערכות מולטימדיה. הרשאה זו נוספה כדי למנוע מאפליקציות זדוניות לסרוק משאבי רשת מקומית, לדוגמה, כדי לזהות בסתר את סביבת המשתמש.
- הורחבה ההגנה מפני יירוט של סיסמאות חד-פעמיות (OTP) וקודי אישור הנשלחים באמצעות SMS. לרוב האפליקציות יש כיום גישה ישירה להודעות אלו רק שלוש שעות לאחר קבלתן. קורא ה-SMS המוגדר כברירת מחדל מציג הודעות אלו באופן מיידי.
- Реализована защита от звонков мошенников, представляющихся сотрудниками банка. Платформа может взаимодействовать с установленными банковскими приложениями для подтверждения того, что звонок инициирован банком. Также банки могут определять номера телефонов на которых допускаются только входящие звонки.
- Добавлена возможность предоставления приложениям временного доступа к данным о точном местоположении, действующего только в течение текущего сеанса работы с программой.
- Механизм защиты динамической загрузки кода (DCL, Dynamic Code Loading) расширен для применения с нативными библиотеками, загружаемыми через метод System.load(), а не только
файлами в форматах DEX и JAR. DCL позволяет избежать подстановки вредоносного кода в динамически загружаемые исполняемые файлы, благодаря выставлению для подобных файлов прав доступа, допускающих только чтение. - מנגנון שקיפות האישורים מופעל כברירת מחדל, ומתחזק יומן ציבורי של כל האישורים שהונפקו והמבוטלים,
- הוצגה היכולת לאשר חבילות APK באמצעות חתימה דיגיטלית המבוססת על אלגוריתם היברידי המשלב את האלגוריתם הקלאסי עם אלגוריתם ML-DSA, העמיד בפני כוח ברוטלי במחשב קוונטי.
- Для приложений, работающих в фоновом режиме, ограничен доступ к API для воспроизведения звука, подключения к звуковым устройствам и изменения громкости. Подразумевается, что только активные приложения, с которыми в данный момент взаимодействует пользователь, могут начинать воспроизведение и менять громкость.
- נוספה תמיכה בהצפנה היברידית המבוססת על מנגנון HPKE (הצפנת מפתח ציבורית היברידית, RFC 9180), המשלב את קלות העברת המפתח בהצפנת מפתח ציבורי עם הביצועים הגבוהים של הצפנה סימטרית (הנתונים מוצפנים עם מפתח סימטרי מהיר, והמפתח עצמו מוצפן עם מפתח אסימטרי איטי).
- При вводе паролей и PIN-кодов при помощи физической клавиатуры по умолчанию отключено отображение последнего введённого символа по мере набора.
- כדי לפשט את יישום תמיכת משטח המגע במשחקים, אוחד אופן הטיפול באירועי עכבר ומשטח מגע. כברירת מחדל, אירועי משטח מגע הקשורים לתנועות מצביע ומחוות גלילה מומרים כעת לקואורדינטות יחסיות, בדיוק כמו בעכבר. גישה לקואורדינטות מוחלטות ניתנת על ידי ציון מפורש של מצב POINTER_CAPTURE_MODE_ABSOLUTE.
- המתודה getInitialRestingBounds() נוספה לאובייקט ChooserSession, ומאפשרת לך למצוא את המיקום והגודל הסופיים של תיבת הדו-שיח Chooser לאחר שהאנימציה נעצרת והנתונים נטענים.
- נוספו שיטות getStreamingAppMaxDownlinkKbps ו-getStreamingAppMaxUplinkKbps כדי לקבוע את רוחב הפס המרבי של ערוץ התקשורת לצורך בחירת רמת האיכות להזרמה.
- ממשק API סופק ליצרני חומרה כדי ליצור הרחבות מצלמה המאפשרות תכונות ספציפיות ליישומים, כגון מנוע שיפור הפרטים Super Resolution, מצבי הפחתת רעש וממטבי איכות של בינה מלאכותית.
- נוסף API לקבלת מידע על סוג המצלמה (מצלמה מובנית, מצלמת רשת USB או מצלמה וירטואלית).
- נוספה תמיכה עבור מכשירי שמיעה המחוברים דרך Bluetooth Low Energy (BLE). מכשירים אלה מסווגים כעת תחת הקטגוריה החדשה TYPE_BLE_HEARING_AID, המאפשרת לאפליקציות להבחין בין מכשירי שמיעה לאוזניות ולשלוט בהשמעת צלילי המערכת בנפרד (לדוגמה, ניתן להשמיע התראות, צלצולים והתראות ברמקול המובנה של הטלפון במקום במכשיר השמיעה).
- נוספו הגדרות נפרדות להצגת סיסמאות שהוזנו במקלדת הפיזית ובמסך המגע. כברירת מחדל, תווי סיסמה שהוזנו באמצעות המקלדת הפיזית מוסתרים באופן מיידי.
- שיפור התצוגה של ווידג'טים של אפליקציות על מסכים חיצוניים על ידי התחשבות בהבדלים ב-DPI בעת שינוי קנה המידה.
- נוספה הבקשה ACTION_VPN_APP_EXCLUSION_SETTINGS, בה ניתן להשתמש כדי לפתוח מסך מערכת עם הגדרות המאפשרות לאפליקציה גישה לרשת תוך עקיפת מנהרת ה-VPN.
- נוספה תמיכה עבור תכונות שפת OpenJDK 25 ושיעורי Java.
- יכולות ה-API של המצלמה הורחבו. שיטת updateOutputConfigurations() נוספה לאובייקט CameraCaptureSession לצורך צירוף או ניתוק של אזורי פלט תוך כדי תנועה, מבלי שיהיה צורך להגדיר מחדש את כל סשן הצילום של המצלמה. שינוי זה מאפשר מעבר חלק בין מצבי מצלמה שונים (לדוגמה, הקלטת וידאו וצילום תמונות). בעת עבודה עם מצלמות לוגיות המשתרעות על פני מספר חיישנים פיזיים, נוספה היכולת לאחזר מטא-נתונים עבור כל חיישן, ולא רק עבור הראשי.
- התכונה android:usesCleartextTraffic, שאפשרה ליישומים להעביר תעבורה לא מוצפנת, כגון בקשות "http://", הוצא משימוש. אם נדרשת תעבורה לא מוצפנת, יש להשתמש בקבצי תצורת אבטחה נפרדים.
- נוספו הגדרות לניהול היסטוריית שיחות VoIP, המאפשרות לך לשלוט האם מידע נשמר ביומנים והאם מידע על שיחות שהושלמו מוצג בממשק.
- ממשק ה-API של Wi-Fi RTT (Round-Trip-Time) הורחב כדי לספק הערכת קרבה רציפה לנקודות גישה וזיהוי מאובטח של צמתים בין עמיתים.
- פרופילים חדשים נוספו ל-CompanionDeviceManager לצורך בקשת הרשאות והפעלת אינטראקציות של אפליקציות עם מכשירים רפואיים ועוקבי כושר.
- В Android זמן ריצה (ART) מיישם אוסף אשפה דורי (Generational Concurrent Mark-Compact Garbage Collector), אשר מפריד בין עיבוד אובייקטים "ישנים" ל"צעירים", ומשפר את יעילות הניקוי של אובייקטים שנוצרו לאחרונה בעלי אורך חיים קצר. השימוש באוסף אשפה דורי מפחית את הסיכון להפסקות במהלך הקצאת משאבים ומפחית את עומס המעבד, ובכך משפר את יעילות האנרגיה.
- Реализовано ограничение на максимальный объём оперативной памяти, которое может занимать приложение. При превышении лимита, вычисляемого на основе имеющегося в устройстве ОЗУ, приложение принудительно завершается. Для сокращения размера потребляемой памяти предложен R8 Optimizer, упаковывающий имена классов, методов и полей, а также удаляющий неиспользуемый код и ресурсы.
- При сборке ядра Linux включена оптимизация AutoFDO (Auto-Feedback-Directed Optimization), использующая результаты профилирования c информацией о частоте выполнения различных участков кода для повышения производительности часто выполняемых операций. В проведённых тестах включение AutoFDO для ядра привело к сокращению времени загрузки на 2.1%, ускорению первого запуска программ на 4.3%, повышению эффективности системных вызовов на 9.3%, сокращению времени выполнения mmap-транзакций Binder на 12.3%, HwBinder на 20% и Binder RPC на 21.7%.
- מוצע יישום חדש של תור ההודעות android.os.MessageQueue, הפועל ללא נעילות. יישום חדש זה משפר את הביצועים ומפחית אובדן פריימים.
- בקשות המבקשות תמיכה Android 17 וגרסאות מאוחרות יותר, שינוי ערכי השדות המסומנים כ-"סופי סטטי" אסור, מה שמאפשר הפעלה של אופטימיזציות ביצועים אגרסיביות יותר בזמן ריצה.
- כדי להפחית את צריכת הזיכרון, גודל פריסות תצוגת ההתראות המותאמות אישית הוגבל.
- טריגרים נוספים TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM ו-TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE נוספו לפרופילר ProfilingManager כדי לאסוף נתונים שימושיים לאיתור בעיות ביצועים.
מקור: OpenNet.ru












