गूगल ने एक ओपन मोबाइल प्लेटफॉर्म लॉन्च किया है। 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) से अधिक चौड़ी स्क्रीन वाले उपकरणों पर नए व्यवहार को अक्षम करने के लिए पहले से सक्षम विकल्प हटा दिए गए हैं। यह व्यवहार स्क्रीन के आकार बदलने और ओरिएंटेशन (screenOrientation, resizeableActivity, [min|max]AspectRatio) को प्रबंधित करने के लिए कुछ API को अनदेखा करने, साथ ही आकार बदलने योग्य और चल विंडो में एप्लिकेशन के अनुकूली प्लेसमेंट से संबंधित था।


- आईड्रॉपर सिस्टम एपीआई को जोड़ा गया है, जिससे एप्लिकेशन स्क्रीन कैप्चर अनुमति की आवश्यकता के बिना स्क्रीन पर किसी भी पिक्सेल के लिए रंग जानकारी प्राप्त कर सकते हैं। सुरक्षा सुनिश्चित करने के लिए, उपयोगकर्ता को प्लेटफ़ॉर्म द्वारा प्रबंधित आईड्रॉपर इंटरफ़ेस के माध्यम से रंग कैप्चर किए जाने वाले क्षेत्र का चयन करने की अनुमति दी गई है, जो एप्लिकेशन के नियंत्रण में नहीं है। इसका मतलब है कि एप्लिकेशन किसी विशिष्ट पिक्सेल के बारे में जानकारी का अनुरोध नहीं कर सकते हैं या स्क्रीन सामग्री को पिक्सेल दर पिक्सेल पुन: निर्मित नहीं कर सकते हैं।

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

- फोटो पिकर इंटरफ़ेस को कस्टमाइज़ करने के लिए PhotoPickerUiCustomizationParams API जोड़ा गया है, जिससे यह कॉलिंग ऐप की शैली से बेहतर मेल खा सके। उदाहरण के लिए, आप फोटो थंबनेल के आस्पेक्ट रेशियो को 1:1 (वर्गाकार) से 9:16 (पोर्ट्रेट) में बदल सकते हैं।

- USE_LOCATION_BUTTON अनुमति जोड़ी गई है, जिससे आप अपने ऐप के इंटरफ़ेस में एक सिस्टम बटन एम्बेड कर सकते हैं और सटीक स्थान डेटा तक पहुंच प्रदान कर सकते हैं। यह बटन सिस्टम द्वारा प्रदर्शित किया जाता है और उपयोगकर्ता द्वारा क्लिक किए जाने पर, वर्तमान सत्र की अवधि के लिए ही स्थान डेटा तक पहुंच प्रदान करता है।

- एक सेटिंग जोड़ी गई है जो आपको आइकन के नीचे एप्लिकेशन के नाम छिपाने की अनुमति देती है।


- स्क्रीनकास्ट रिकॉर्डिंग टूलबार के डिजाइन में बदलाव किया गया है।

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

- हैंडऑफ़ एपीआई जोड़ा गया है, जिससे आप किसी एप्लिकेशन की स्थिति को पास के किसी अन्य एप्लिकेशन में स्थानांतरित कर सकते हैं। Androidकिसी अन्य डिवाइस (उदाहरण के लिए, टैबलेट) पर जाकर अपना काम जारी रखें।

- इसमें इंटरैक्टिव डॉक्ड विंडो को लागू किया गया है, जो पारंपरिक पिक्चर-इन-पिक्चर विंडो के विपरीत, डेस्कटॉप मोड में अन्य एप्लिकेशन के ऊपर डॉक किए जाने पर भी इंटरैक्टिव बनी रहती हैं।
- दो नए एपीआई जोड़े गए हैं: वाई-फाई का उपयोग करके इनडोर नेविगेशन के लिए किसी इमारत के अंदर किसी डिवाइस की स्थिति निर्धारित करने के लिए यूडब्ल्यूबी डीएल-टीडीओए एपीआई; और वाई-फाई के माध्यम से आस-पास के उपकरणों का पता लगाने के लिए प्रॉक्सिमिटी डिटेक्शन एपीआई।
- वीवीसी (वर्सेटाइल वीडियो कोडिंग) वीडियो फॉर्मेट के लिए सपोर्ट जोड़ा गया है, जिसे एच.266 वीडियो कंप्रेशन स्टैंडर्ड के नाम से भी जाना जाता है। इसे एमपीईजी (आईएसओ/आईईसी जेटीसी 1) और वीसीईजी (आईटीयू-टी) वर्किंग ग्रुप्स द्वारा संयुक्त रूप से विकसित किया गया है, जिसमें एप्पल, एरिक्सन, इंटेल, हुआवेई, माइक्रोसॉफ्ट, क्वालकॉम और सोनी जैसी कंपनियों ने भाग लिया है। एच.266, एच.265 (एचईवीसी) का स्थान लेता है और सभी स्क्रीन रेज़ोल्यूशन (एसडी और एचडी से लेकर 4के और 8के तक) के लिए उच्च-दक्षता वाला ट्रांसमिशन और स्टोरेज प्रदान करता है, हाई डायनेमिक रेंज (एचडीआर) वीडियो और 360-डिग्री पैनोरैमिक वीडियो को सपोर्ट करता है।
- वीडियो को एक समान गुणवत्ता स्तर पर रिकॉर्ड करने की सुविधा जोड़ी गई है। इस मोड को MediaRecorder ऑब्जेक्ट में setVideoEncodingQuality() विधि का उपयोग करके कॉन्फ़िगर किया जाता है, जिससे आप बिटरेट की परवाह किए बिना गुणवत्ता स्तर को लॉक कर सकते हैं।
- Добавлена поддержка формата изображений RAW14, применяемого в профессиональных цифровых камерах и обеспечивающего хранение 15 бит на цветовой канал.
- Добавлено поддержка формата HDR-видео Eclipsa Video.
- HE-AAC (हाई-एफिशिएंसी एडवांस्ड ऑडियो कोडिंग) ऑडियो फॉर्मेट के लिए सॉफ्टवेयर एनकोडर जोड़ा गया है, जो कम और उच्च बिटरेट दोनों को सपोर्ट करता है।
- लोकल नेटवर्क तक ऐप्स की पहुंच को सीमित करने के लिए एक नई अनुमति, ACCESS_LOCAL_NETWORK, जोड़ी गई है। यह अनुमति ऐप्स को लोकल नेटवर्क पर मौजूद डिवाइसों, जैसे स्मार्ट होम डिवाइस और मल्टीमीडिया सिस्टम, की पहचान करने और उनसे कनेक्ट करने की अनुमति देती है। यह अनुमति दुर्भावनापूर्ण ऐप्स को लोकल नेटवर्क संसाधनों को स्कैन करने से रोकने के लिए जोड़ी गई है, उदाहरण के लिए, उपयोगकर्ता के परिवेश की गुप्त रूप से पहचान करने के लिए।
- एसएमएस के माध्यम से भेजे गए वन-टाइम पासवर्ड (ओटीपी) और पुष्टिकरण कोड को इंटरसेप्ट करने से सुरक्षा को बढ़ाया गया है। अधिकांश ऐप्स अब इन संदेशों को प्राप्त होने के तीन घंटे बाद ही सीधे एक्सेस कर सकते हैं। डिफ़ॉल्ट एसएमएस रीडर इन संदेशों को तुरंत प्रदर्शित करता है।
- Реализована защита от звонков мошенников, представляющихся сотрудниками банка. Платформа может взаимодействовать с установленными банковскими приложениями для подтверждения того, что звонок инициирован банком. Также банки могут определять номера телефонов на которых допускаются только входящие звонки.
- Добавлена возможность предоставления приложениям временного доступа к данным о точном местоположении, действующего только в течение текущего сеанса работы с программой.
- Механизм защиты динамической загрузки кода (DCL, Dynamic Code Loading) расширен для применения с нативными библиотеками, загружаемыми через метод System.load(), а не только
файлами в форматах DEX и JAR. DCL позволяет избежать подстановки вредоносного кода в динамически загружаемые исполняемые файлы, благодаря выставлению для подобных файлов прав доступа, допускающих только чтение. - सर्टिफिकेट ट्रांसपेरेंसी तंत्र डिफ़ॉल्ट रूप से सक्षम है, जो जारी और रद्द किए गए सभी प्रमाणपत्रों का एक सार्वजनिक लॉग बनाए रखता है।
- एक हाइब्रिड एल्गोरिदम पर आधारित डिजिटल हस्ताक्षर के साथ APK पैकेजों को प्रमाणित करने की क्षमता पेश की गई है, जो क्लासिकल एल्गोरिदम को ML-DSA एल्गोरिदम के साथ जोड़ती है और क्वांटम कंप्यूटर पर ब्रूट फोर्स के प्रति प्रतिरोधी है।
- Для приложений, работающих в фоновом режиме, ограничен доступ к API для воспроизведения звука, подключения к звуковым устройствам и изменения громкости. Подразумевается, что только активные приложения, с которыми в данный момент взаимодействует пользователь, могут начинать воспроизведение и менять громкость.
- एचपीकेई (हाइब्रिड पब्लिक की एन्क्रिप्शन, आरएफसी 9180) तंत्र पर आधारित हाइब्रिड एन्क्रिप्शन के लिए समर्थन जोड़ा गया है, जो सार्वजनिक कुंजी एन्क्रिप्शन में कुंजी हस्तांतरण की आसानी को सममित एन्क्रिप्शन के उच्च प्रदर्शन के साथ जोड़ता है (डेटा को एक तेज़ सममित कुंजी के साथ एन्क्रिप्ट किया जाता है, और कुंजी को ही एक धीमी असममित कुंजी के साथ एन्क्रिप्ट किया जाता है)।
- При вводе паролей и PIN-кодов при помощи физической клавиатуры по умолчанию отключено отображение последнего введённого символа по мере набора.
- गेम में टचपैड सपोर्ट को लागू करने को सरल बनाने के लिए, माउस और टचपैड इवेंट्स को संभालने का तरीका एकीकृत कर दिया गया है। डिफ़ॉल्ट रूप से, पॉइंटर मूवमेंट और स्क्रॉलिंग जेस्चर से संबंधित टचपैड इवेंट्स को अब माउस की तरह ही रिलेटिव कोऑर्डिनेट्स में परिवर्तित किया जाता है। एब्सोल्यूट कोऑर्डिनेट्स तक पहुँच POINTER_CAPTURE_MODE_ABSOLUTE मोड को स्पष्ट रूप से निर्दिष्ट करके प्राप्त की जा सकती है।
- ChooserSession ऑब्जेक्ट में getInitialRestingBounds() विधि जोड़ी गई है, जिससे आप एनीमेशन रुकने और डेटा लोड होने के बाद Chooser डायलॉग की अंतिम स्थिति और आकार का पता लगा सकते हैं।
- स्ट्रीमिंग के लिए गुणवत्ता स्तर का चयन करने के उद्देश्य से संचार चैनल की अधिकतम बैंडविड्थ निर्धारित करने के लिए getStreamingAppMaxDownlinkKbps और getStreamingAppMaxUplinkKbps विधियाँ जोड़ी गई हैं।
- हार्डवेयर निर्माताओं को कैमरा एक्सटेंशन बनाने के लिए एक एपीआई प्रदान किया गया है जो एप्लिकेशन-विशिष्ट सुविधाओं को सक्षम बनाता है, जैसे कि सुपर रेज़ोल्यूशन डिटेल एन्हांसमेंट इंजन, नॉइज़ रिडक्शन मोड और एआई क्वालिटी ऑप्टिमाइज़र।
- कैमरा प्रकार (अंतर्निहित कैमरा, यूएसबी वेबकैम या वर्चुअल कैमरा) के बारे में जानकारी प्राप्त करने के लिए एपीआई जोड़ा गया है।
- ब्लूटूथ लो एनर्जी (BLE) के माध्यम से कनेक्ट होने वाले हियरिंग एड्स के लिए सपोर्ट जोड़ा गया है। इन डिवाइसों को अब नई TYPE_BLE_HEARING_AID श्रेणी के अंतर्गत वर्गीकृत किया गया है, जिससे ऐप्स हियरिंग एड्स और हेडफ़ोन के बीच अंतर कर सकते हैं और सिस्टम साउंड प्लेबैक को अलग-अलग नियंत्रित कर सकते हैं (उदाहरण के लिए, आप नोटिफिकेशन, रिंगटोन और अलार्म को अपने हियरिंग एड के बजाय अपने फ़ोन के बिल्ट-इन स्पीकर पर चला सकते हैं)।
- फिजिकल कीबोर्ड और टचस्क्रीन पर दर्ज किए गए पासवर्ड को प्रदर्शित करने के लिए अलग-अलग सेटिंग्स जोड़ी गई हैं। डिफ़ॉल्ट रूप से, फिजिकल कीबोर्ड का उपयोग करके दर्ज किए गए पासवर्ड अक्षर तुरंत छिपा दिए जाते हैं।
- स्केलिंग के दौरान डीपीआई में अंतर को ध्यान में रखते हुए बाहरी स्क्रीन पर ऐप विजेट्स का बेहतर प्रदर्शन।
- ACTION_VPN_APP_EXCLUSION_SETTINGS अनुरोध जोड़ा गया है, जिसका उपयोग उन सेटिंग्स के साथ एक सिस्टम स्क्रीन खोलने के लिए किया जा सकता है जो किसी एप्लिकेशन को वीपीएन टनल को बायपास करके नेटवर्क एक्सेस करने की अनुमति देती हैं।
- OpenJDK 25 भाषा सुविधाओं और जावा क्लास के लिए समर्थन जोड़ा गया।
- कैमरा API की क्षमताओं का विस्तार किया गया है। CameraCaptureSession ऑब्जेक्ट में updateOutputConfigurations() विधि जोड़ी गई है, जिससे पूरे कैमरा कैप्चर सेशन को पुनः कॉन्फ़िगर किए बिना आउटपुट क्षेत्रों को तुरंत जोड़ा या हटाया जा सकता है। यह बदलाव विभिन्न कैमरा मोड (उदाहरण के लिए, वीडियो रिकॉर्डिंग और फ़ोटो लेना) के बीच सहजता से स्विच करने की सुविधा देता है। जब कई भौतिक सेंसर वाले लॉजिकल कैमरों के साथ काम किया जाता है, तो प्राथमिक सेंसर के अलावा प्रत्येक सेंसर के लिए मेटाडेटा प्राप्त करने की क्षमता जोड़ी गई है।
- android:usesCleartextTraffic एट्रिब्यूट, जो एप्लिकेशन को "http://" जैसे अनएन्क्रिप्टेड ट्रैफ़िक भेजने की अनुमति देता था, अब अप्रचलित हो गया है। यदि अनएन्क्रिप्टेड ट्रैफ़िक आवश्यक है, तो अलग सुरक्षा कॉन्फ़िगरेशन फ़ाइलों का उपयोग किया जाना चाहिए।
- VoIP कॉल इतिहास को प्रबंधित करने के लिए सेटिंग्स जोड़ी गई हैं, जिससे आप यह नियंत्रित कर सकते हैं कि जानकारी लॉग में सहेजी जाए या नहीं और पूर्ण हुई कॉलों के बारे में जानकारी इंटरफ़ेस में प्रदर्शित की जाए या नहीं।
- वाई-फाई आरटीटी (राउंड-ट्रिप-टाइम) एपीआई का विस्तार किया गया है ताकि एक्सेस पॉइंट्स के लिए निरंतर निकटता अनुमान और सुरक्षित पीयर-टू-पीयर नोड डिटेक्शन प्रदान किया जा सके।
- मेडिकल डिवाइस और फिटनेस ट्रैकर्स के साथ ऐप इंटरैक्शन को सक्षम करने और अनुमतियों का अनुरोध करने के लिए कंपेनियन डिवाइस मैनेजर में नए प्रोफाइल जोड़े गए हैं।
- В Android Runtime (ART) реализован поколенческий сборщик мусора (Generational Concurrent Mark-Compact Garbage Collector), использующий раздельную обработку «старых» и «молодых» объектов, что повышает эффективность очистки недавно созданных объектов с небольшим временем жизни. Применение поколенческого сборщика мусора уменьшает риск приостановок во время выделения ресурсов и снижает нагрузку на CPU, что повышает эффективность потребления энергии.
- Реализовано ограничение на максимальный объём оперативной памяти, которое может занимать приложение. При превышении лимита, вычисляемого на основе имеющегося в устройстве ОЗУ, приложение принудительно завершается. Для сокращения размера потребляемой памяти предложен 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 и более новых выпусков, запрещено изменять значения полей, помеченных как «static final», что позволяет задействовать более агрессивные оптимизации производительности в runtime.
- मेमोरी की खपत को कम करने के लिए, कस्टम नोटिफिकेशन व्यू लेआउट के आकार को सीमित कर दिया गया है।
- प्रदर्शन संबंधी समस्याओं को डीबग करने के लिए उपयोगी डेटा एकत्र करने हेतु प्रोफिलिंग मैनेजर प्रोफाइलर में अतिरिक्त ट्रिगर TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM और TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE जोड़े गए हैं।
स्रोत: opennet.ru












