Google ochiq mobil platformasini taqdim etdi. Android 17. Yangi versiyaning manba kodi loyihaning Git omborida (android-17.0.0_r1 filiali) mavjud. Quyidagi qurilmalar uchun dasturiy ta'minot versiyalari tayyorlandi: 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 va Pixel Tablet. HONOR, iQOO, Lenovo, OnePlus, OPPO, realme, Sharp, vivo va Xiaomi qurilmalari uchun oldindan chiqarilgan dasturiy ta'minot versiyalari mavjud. ARM64 va x86_64 arxitekturalariga asoslangan turli xil qurilmalar uchun mos keladigan umumiy tizim tasvirlari (GSI) versiyalari yaratilish jarayonida.
O'zgarishlar orasida (1, 2, 3):
- Yangi ko'p oynali rejim, "Pufakchalar" qo'shildi. Bu sizga xabarlarni yuborish uchun qo'shimcha bildirishnomalarga o'xshash, lekin ixtisoslashgan APIga bog'lanmagan istalgan ilovani suzuvchi oynalarda ishga tushirish imkonini beradi. Suzuvchi oynada ilovani ochish ilova belgisini uzoq vaqt bosish orqali amalga oshiriladi. Katta ekranlarda suzuvchi oyna belgilari vazifalar panelidagi alohida joyda paydo bo'ladi. Bu oynalarni guruhlash, ko'chirish va ekranga mahkamlash mumkin.

- Planshetlar, noutbuklar, ish stoli tizimlari va buklanadigan ekranli smartfonlar kabi katta ekranli qurilmalar uchun platforma ishlab chiqish davom ettirildi. Ekranlari 600 pikseldan (dp) kengroq bo'lgan qurilmalarda yangi xatti-harakatlarni o'chirib qo'yish uchun ilgari yoqilgan variantlar olib tashlandi. Bu xatti-harakatlar ekran o'lchamini va yo'nalishini boshqarish uchun ma'lum API-larni (screenOrientation, resizeableActivity, [min|max]AspectRatio), shuningdek, ilovalarni o'lchamini o'zgartiriladigan va harakatlanuvchi oynalarda moslashuvchan joylashtirish bilan bog'liq edi.


- EyeDropper tizimi API qo'shildi, bu ilovalarga ekranni suratga olish ruxsatini talab qilmasdan ekrandagi istalgan piksel uchun rang ma'lumotlarini olish imkonini beradi. Xavfsizlik foydalanuvchiga dastur nazorati ostida bo'lmagan platforma tomonidan boshqariladigan pipetka interfeysi orqali rang bilan suratga olinadigan maydonni tanlash imkonini berish orqali ta'minlanadi. Bu shuni anglatadiki, ilovalar ma'lum bir piksel haqida ma'lumot so'rashi yoki ekran tarkibini piksel bo'yicha qayta yaratishi mumkin emas.

- Manzillar kitobidan kontaktlarni tanlash uchun tizim interfeysi qo'shildi. Ushbu interfeysga kirish ACTION_PICK_CONTACTS ruxsatini berish orqali amalga oshiriladi. Ushbu interfeys barcha kontakt ma'lumotlarini o'qish imkonini beruvchi READ_CONTACTS ruxsatiga ehtiyojni bartaraf etadi. Yangi interfeysni ishga tushirishda foydalanuvchi manzillar kitobidan qaysi ma'lumotlarni ilovaga o'tkazishni o'zi hal qiladi, faqat alohida maydonlarni tanlash imkoniyati mavjud.

- Fotosurat tanlagich interfeysini sozlash uchun PhotoPickerUiCustomizationParams API qo'shildi, bu unga qo'ng'iroq qiluvchi ilova uslubiga yaxshiroq moslashish imkonini beradi. Masalan, siz fotosurat eskizlarining tomonlar nisbatini 1:1 (kvadrat) dan 9:16 (portret) ga o'zgartirishingiz mumkin.

- USE_LOCATION_BUTTON ruxsati qo'shildi, bu sizga aniq joylashuv ma'lumotlariga kirish huquqini berish uchun ilovangiz interfeysiga tizim tugmachasini joylashtirish imkonini beradi. Tugma tizim tomonidan ko'rsatiladi va foydalanuvchi bosganda, joylashuv ma'lumotlariga faqat joriy sessiya davomida kirish huquqini beradi.

- Ilova nomlarining piktogrammalari ostida ko'rsatilishini yashirish imkonini beruvchi sozlama qo'shildi.


- Skrinkast yozib olish asboblar paneli dizayni o'zgartirildi.

- Ekrandagi harakatlarga o'z sharhlaringizni qo'shish uchun old kameradan video yozib olishni skrinshot yaratish bilan birlashtirgan Ekran Reaksiyalari uchun qo'llab-quvvatlash qo'shildi.
- Buklanadigan ekranli qurilmalardagi oʻyinlar uchun rejim qoʻshildi, unda buklanadigan ekranning bir yarmi oʻyin jarayonini namoyish qilish uchun, ikkinchisi esa virtual geympad uchun ishlatiladi.

- Ilovaning holatini yaqin atrofdagi boshqa ilovaga o'tkazish imkonini beruvchi Handoff API qo'shildi Android-qurilma (masalan, planshet) va u yerda ishlashni davom ettiring.

- An'anaviy "Tasvir ichidagi rasm" oynalaridan farqli o'laroq, ish stoli rejimida boshqa ilovalar ustiga o'rnatilganda interaktiv bo'lib qoladigan interaktiv doklangan oynalar joriy etildi.
- Ikkita yangi API qo'shildi: bino ichidagi qurilmaning joylashuvini Wi-Fi orqali ichki navigatsiya uchun aniqlash uchun UWB DL-TDOA API; va yaqin atrofdagi qurilmalarni Wi-Fi orqali aniqlash uchun Proximity Detection API.
- Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm va Sony kabi kompaniyalar ishtirokida MPEG (ISO/IEC JTC 1) va VCEG (ITU-T) ishchi guruhlari tomonidan birgalikda ishlab chiqilgan, H.266 video siqish standarti sifatida ham tanilgan VVC (Versatile Video Coding) video formati uchun qo'llab-quvvatlash qo'shildi. H.266 H.265 (HEVC) o'rnini bosadi va barcha ekran o'lchamlari (SD va HD dan 4K va 8K gacha) uchun yuqori samarali uzatish va saqlashni ta'minlaydi, yuqori dinamik diapazonli (HDR) video va 360 darajali panoramali videoni qo'llab-quvvatlaydi.
- Doimiy sifat darajasi bilan video yozib olish imkoniyati qo'shildi. Ushbu rejim MediaRecorder obyektida setVideoEncodingQuality() usuli yordamida sozlangan bo'lib, bitreytdan qat'i nazar, sifat darajasini qulflash imkonini beradi.
- Professional raqamli kameralarda ishlatiladigan va har bir rangli kanal uchun 15 bit saqlashni ta'minlaydigan RAW14 tasvir formatini qo'llab-quvvatlash qo'shildi.
- Eclipsa Video HDR video formatini qo'llab-quvvatlash qo'shildi.
- HE-AAC (Yuqori samaradorlikdagi ilg'or audio kodlash) audio formati uchun past va yuqori bitreytlarni qo'llab-quvvatlaydigan dasturiy kodlovchi qo'shildi.
- Ilovalarning mahalliy tarmoqqa kirishini cheklash uchun yangi ACCESS_LOCAL_NETWORK ruxsatnomasi qo'shildi. Ushbu ruxsatnoma ilovalarga mahalliy tarmoqdagi aqlli uy qurilmalari va multimedia tizimlari kabi qurilmalarni aniqlash va ularga ulanish imkonini beradi. Ushbu ruxsatnoma zararli ilovalarning mahalliy tarmoq resurslarini skanerlashining oldini olish, masalan, foydalanuvchi muhitini yashirincha aniqlash uchun qo'shildi.
- SMS orqali yuborilgan bir martalik parollar (OTP) va tasdiqlash kodlarini ushlab qolishdan himoya qilish kengaytirildi. Ko'pgina ilovalar endi ushbu xabarlarga ular olinganidan uch soat o'tgach to'g'ridan-to'g'ri kirish huquqiga ega. Standart SMS o'quvchi bu xabarlarni darhol ko'rsatadi.
- Bank xodimlari sifatida o'zini ko'rsatgan firibgar shaxslarning qo'ng'iroqlaridan himoya qilish joriy etildi. Platforma qo'ng'iroq bankdan kelganligini tasdiqlash uchun o'rnatilgan bank ilovalari bilan o'zaro ishlashi mumkin. Banklar, shuningdek, faqat kiruvchi qo'ng'iroqlarni qabul qiladigan telefon raqamlarini ham aniqlashlari mumkin.
- Ilovalarga aniq joylashuv ma'lumotlariga vaqtinchalik kirish huquqini berish imkoniyati qo'shildi, bu faqat dasturdan foydalanishning joriy sessiyasi davomida amal qiladi.
- Dinamik kod yuklanishi (DCL) himoya mexanizmi nafaqat System.load() usuli orqali yuklangan mahalliy kutubxonalarni qo'llab-quvvatlash uchun kengaytirildi, balki
DEX va JAR fayllari. DCL zararli kodning dinamik ravishda yuklangan bajariladigan fayllarga kiritilishining oldini oladi, bu fayllar uchun faqat o'qish uchun kirish huquqlarini o'rnatadi. - Sertifikat shaffofligi mexanizmi sukut bo'yicha yoqilgan bo'lib, barcha berilgan va bekor qilingan sertifikatlarning ommaviy jurnalini yuritadi.
- Kvant kompyuterida qo'pol kuchga chidamli bo'lgan klassik algoritmni ML-DSA algoritmi bilan birlashtirgan gibrid algoritmga asoslangan raqamli imzo bilan APK paketlarini sertifikatlash imkoniyati joriy etildi.
- Orqa fonda ishlaydigan ilovalar audio ijro etish, audio qurilmalarga ulanish va ovoz balandligini o'zgartirish uchun API-larga cheklangan kirish huquqiga ega. Bu shuni anglatadiki, faqat foydalanuvchi hozirda o'zaro aloqada bo'lgan faol ilovalar ijro etishni boshlashi va ovoz balandligini o'zgartirishi mumkin.
- HPKE (Gibrid ochiq kalit shifrlash, RFC 9180) mexanizmiga asoslangan gibrid shifrlashni qo'llab-quvvatlash qo'shildi, bu ochiq kalit shifrlashda kalitlarni uzatish qulayligini simmetrik shifrlashning yuqori samaradorligi bilan birlashtiradi (ma'lumotlar tez simmetrik kalit bilan shifrlanadi va kalitning o'zi sekin assimetrik kalit bilan shifrlanadi).
- Jismoniy klaviatura yordamida parol va PIN-kodlarni kiritishda, oxirgi kiritilgan belgini kiritish paytida ko'rsatish sukut bo'yicha o'chirib qo'yilgan bo'ladi.
- O'yinlarda sensorli panelni qo'llab-quvvatlashni soddalashtirish uchun sichqoncha va sensorli panel hodisalarini boshqarish birlashtirildi. Odatiy bo'lib, ko'rsatkich harakatlari va aylantirish imo-ishoralari bilan bog'liq sensorli panel hodisalari endi sichqoncha kabi nisbiy koordinatalarga aylantiriladi. Mutlaq koordinatalarga kirish POINTER_CAPTURE_MODE_ABSOLUTE rejimini aniq belgilash orqali ta'minlanadi.
- getInitialRestingBounds() usuli ChooserSession obyektiga qo'shildi, bu sizga animatsiya to'xtaganidan va ma'lumotlar yuklanganidan so'ng Chooser dialog oynasining yakuniy holati va hajmini aniqlash imkonini beradi.
- Oqimli uzatish uchun sifat darajasini tanlash maqsadida aloqa kanalining maksimal o'tkazish qobiliyatini aniqlash uchun getStreamingAppMaxDownlinkKbps va getStreamingAppMaxUplinkKbps usullari qo'shildi.
- Apparat ishlab chiqaruvchilariga Super Resolution tafsilotlarni yaxshilash mexanizmi, shovqinni kamaytirish rejimlari va AI sifat optimallashtiruvchilari kabi ilovaga xos xususiyatlarni yoqadigan kamera kengaytmalarini yaratish uchun API taqdim etildi.
- Kamera turi (o'rnatilgan kamera, USB veb-kamera yoki virtual kamera) haqida ma'lumot olish uchun API qo'shildi.
- Bluetooth Low Energy (BLE) orqali ulangan eshitish apparatlari uchun qo'llab-quvvatlash qo'shildi. Ushbu qurilmalar endi yangi TYPE_BLE_HEARING_AID toifasi ostida tasniflanadi, bu ilovalarga eshitish apparatlari va minigarnituralarni farqlash va tizim ovozini alohida ijro etishni boshqarish imkonini beradi (masalan, siz bildirishnomalar, ringtonlar va signallarni eshitish apparatingizda emas, balki telefoningizning o'rnatilgan karnayida ijro etishingiz mumkin).
- Jismoniy klaviaturada va sensorli ekranda kiritilgan parollarni ko'rsatish uchun alohida sozlamalar qo'shildi. Odatiy bo'lib, jismoniy klaviatura yordamida kiritilgan parol belgilari darhol yashiriladi.
- Masshtablashda DPI farqlarini hisobga olish orqali tashqi ekranlarda ilova vidjetlarining yaxshilangan ko'rinishi.
- VPN tunnelini chetlab o'tib, ilovaga tarmoqqa kirish imkonini beruvchi sozlamalarga ega tizim ekranini ochish uchun ishlatilishi mumkin bo'lgan ACTION_VPN_APP_EXCLUSION_SETTINGS so'rovi qo'shildi.
- OpenJDK 25 til xususiyatlari va Java sinflari uchun qo'llab-quvvatlash qo'shildi.
- Kamera API imkoniyatlari kengaytirildi. Kamerani suratga olishning butun sessiyasini qayta konfiguratsiya qilmasdan chiqish mintaqalarini tezkor ravishda ulash yoki ajratish uchun CameraCaptureSession obyektiga updateOutputConfigurations() usuli qo'shildi. Ushbu o'zgarish turli kamera rejimlari (masalan, video yozuv va fotosuratga olish) o'rtasida uzluksiz almashinish imkonini beradi. Bir nechta jismoniy sensorlarni qamrab oluvchi mantiqiy kameralar bilan ishlashda nafaqat asosiy, balki har bir sensor uchun metama'lumotlarni olish imkoniyati qo'shildi.
- Ilovalarga "http://" so'rovlari kabi shifrlanmagan trafikni uzatish imkonini beruvchi android:usesCleartextTraffic atributi eskirgan. Agar shifrlanmagan trafik talab qilinsa, alohida xavfsizlik konfiguratsiya fayllaridan foydalanish kerak.
- VoIP qo'ng'iroqlar tarixini boshqarish uchun sozlamalar qo'shildi, bu sizga ma'lumotlar jurnallarda saqlanishini va bajarilgan qo'ng'iroqlar haqidagi ma'lumotlar interfeysda ko'rsatilishini boshqarish imkonini beradi.
- Wi-Fi RTT (Round-Trip-Time) API kirish nuqtalariga uzluksiz yaqinlikni ta'minlash va tengdoshlar o'rtasidagi tugunlarni xavfsiz aniqlash uchun kengaytirildi.
- Tibbiy asboblar va fitnes trekerlari bilan ilovalar oʻrtasidagi oʻzaro aloqalarni yoqish va ruxsatnomalarni soʻrash uchun CompanionDeviceManager’ga yangi profillar qoʻshildi.
- В Android Runtime (ART) avlodlar bo'yicha chiqindi yig'uvchini (Generational Concurrent Mark-Compact Garbage Collector) joriy etadi, bu "eski" va "yosh" obyektlarni qayta ishlashni ajratib turadi, bu esa qisqa muddatli yaqinda yaratilgan obyektlarni tozalash samaradorligini oshiradi. Avlodlar bo'yicha chiqindi yig'uvchidan foydalanish resurslarni taqsimlash paytida to'xtab qolish xavfini kamaytiradi va protsessor yukini kamaytiradi, bu esa energiya samaradorligini oshiradi.
- Ilova egallashi mumkin bo'lgan maksimal RAM miqdoriga cheklov joriy etildi. Agar qurilmaning mavjud RAMiga asoslanib hisoblangan limit oshib ketsa, dastur majburiy ravishda to'xtatiladi. Xotira sarfini kamaytirish uchun R8 Optimizer joriy etildi, u sinf, usul va maydon nomlarini paketlaydi hamda ishlatilmagan kod va resurslarni olib tashlaydi.
- Yadroni kompilyatsiya qilishda Linux AutoFDO (Avtomatik fikr-mulohazaga yo'naltirilgan optimallashtirish) yoqilgan. U tez-tez bajariladigan operatsiyalarning samaradorligini oshirish uchun kodning turli bo'limlarining bajarilish chastotasi haqidagi ma'lumotlar bilan profillash natijalaridan foydalanadi. O'tkazilgan sinovlarda yadro uchun AutoFDO ni yoqish yuklash vaqtining 2.1% ga, birinchi ishga tushirilgan dasturni bajarishda 4.3% ga tezlashuvga, tizim chaqiruvlari samaradorligining 9.3% ga oshishiga, Binder mmap tranzaksiyalarini bajarish vaqtining 12.3% ga, HwBinder bajarish vaqtining 20% ga va Binder RPC bajarish vaqtining 21.7% ga qisqarishiga olib keldi.
- Android.os.MessageQueue xabarlar navbatining yangi amalga oshirilishi taklif qilinmoqda, u qulflarsiz ishlaydi. Ushbu yangi amalga oshirish unumdorlikni oshiradi va kadr yo'qotilishini kamaytiradi.
- Qo'llab-quvvatlashni talab qiladigan ilovalar Android 17 va undan keyingi versiyalarda "statik yakuniy" deb belgilangan maydonlarning qiymatlarini o'zgartirish taqiqlangan, bu esa ish vaqtida yanada tajovuzkor ishlash optimallashtirishlarini yoqish imkonini beradi.
- Xotira sarfini kamaytirish uchun maxsus bildirishnoma ko'rinishi maketlarining hajmi cheklangan.
- Ishlash muammolarini tuzatish uchun foydali ma'lumotlarni to'plash maqsadida ProfilingManager profileriga qo'shimcha TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM va TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE triggerlari qo'shildi.
Manba: opennet.ru












