Kompania Google publikoi një version të platformës së hapur të mobilit Android 14. Kodet e burimit të lidhura me këtë version janë vendosur në repo-n e projektit (dega android-14.0.0_r1). Përditësimet e firmware janë përgatitur për pajisjet e serisë Pixel. më vonë janë planifikuar përditësime firmware për smartphone-t e prodhuar nga Samsung Galaxy, iQOO, Nothing, OnePlus, Oppo, Realme, Sharp, Sony, Tecno, vivo dhe Xiaomi. Për më tepër, janë formuluar ndërtimet universale GSI (Generic System Images), të përshtatshme për pajisje të ndryshme mbi arkitekturën ARM64 dhe x86_64.
TĂ« rejat kryesore:
- Në përbërjen kryesore të platformës është përfshirë ruajtja Health Connect, e cila më parë ishte ofruar si një paketë të veçantë nëpërmjet Google Play. Health Connect ofron ruajtje të centralizuar të të dhënave nga pajisjet e aktiviteteve fizike dhe pajisje të tjera të lidhura me shëndetin e përdoruesve, dhe organizon qasje të ndarë për aplikacione të ndryshme në të dhënat e shëndetit. Qasja në cilësimet e Health Connect tani do të ofrohet nëpërmjet konfiguruesit standard të platformës, për shembull, përmes cilësimeve të privatësisë, mund të menaxhohet se cilat të dhëna për shëndetin mund të aksesohen nga aplikacione të caktuara. Për më tepër, në Health Connect është shtuar mbështetje për ruajtjen e informacionit mbi rrugën e kaluar gjatë stërvitjes (përdoruesi përcakton intervalin e kohës për të cilin do të ruhet lista e pikave të kaluara). Rruga mund të vizualizohet në hartë dhe, nëse dëshirohet, t'i dërgohet për përpunim aplikacioneve të tjera, pas konfirmimit të qartë nga përdoruesi.

- Janë zgjeruar mjetet për konfirmimin e qasjes në informacionin mbi vendndodhjen. Në dialogun me kërkesën për konfirmimin e qasjes në vendndodhje është shtuar një seksion i ri me informacion mbi kur aplikacioni dërgon të dhëna mbi vendndodhjen (akses i ndaluar, lejo vetëm një herë dhe lejo për çdo herë tjetër gjatë përdorimit të aplikacionit) dhe detajeve, ku mund të merren informacione shtesë mbi qasjen në të dhënat që dërgohen.

- ĂshtĂ« zbatuar njĂ« rregullim periodik (njĂ« herĂ« nĂ« muaj) i njoftimeve pĂ«r ndryshimet e aplikacioneve qĂ« kanĂ« marrĂ« qasje nĂ« vendndodhje, metodave tĂ« dĂ«rgimit tĂ« tĂ« dhĂ«nave pĂ«r palĂ«t e treta (pĂ«r shembull, njĂ« njoftim shfaqet kur aplikacioni fillon tĂ« pĂ«rdorĂ« tĂ« dhĂ«nat mbi vendndodhjen gjatĂ« shfaqjes sĂ« reklamave).

- Në punën me aplikacionet është realizuar një sugjerim më i dukshëm me një arrow prapa, i shfaqur për të thjeshtuar kuptimin e mundësisë së përdorimit të gjestit të ekranit për të kthyer prapa.

- Në mekanizmin Sharesheet, i cili përdoret për dërgimin e të dhënave (p.sh., imazhe ose lidhje) jashtë aplikacionit ose një përdoruesi tjetër, është realizuar mundësia e shtimit të veprimeve të veta. Për shembull, mund të caktoni një listë të vetë-krahasuesve ChooserAction, të cilët tregojnë aplikacionet dhe përdoruesit, të cilëve mund të dërgoni. Për më tepër, është zgjeruar spektri i sinjalizimeve të përdorura për renditjen e qëllimeve për dërgimin e drejtpërdrejtë të të dhënave.

- ĂshtĂ« ofruar mundĂ«sia e ofrimit tĂ« pjesshĂ«m tĂ« autorizimeve pĂ«r qasje vetĂ«m nĂ« fotografi dhe video tĂ« zgjedhura nga pĂ«rdoruesi (READ_MEDIA_VISUAL_USER_SELECTED, skedarĂ«t pĂ«r tĂ« cilat jepet qasje zgjidhen nga pĂ«rdoruesi pĂ«rmes ndĂ«rfaqes sĂ« pĂ«rzgjedhjes sĂ« fotografive gjatĂ« shfaqjes sĂ« dialogut tĂ« kĂ«rkesĂ«s pĂ«r autorizim). Pas kalimit tĂ« aplikacionit nĂ« mĂ«nyrĂ«n nĂ« sfond ose pĂ«rfundimit tĂ« programit, autorizimi i dhĂ«nĂ« nga pĂ«rdoruesi tĂ«rhiqet automatikisht. NĂ« dialogun e konfirmimit tĂ« autorizimeve pĂ«r qasjen e aplikacioneve nĂ« skedarĂ«t medial Ă«shtĂ« shtuar mundĂ«sia e dhĂ«nies sĂ« qasjes vetĂ«m nĂ« fotografitĂ« ose videot e pĂ«rzgjedhura.

- Tek konfiguratori është shtuar një seksion për të ripërcaktuar preferencat rajonale, siç janë njësitë e matjes së temperaturës, dita e parë e javës dhe sistemi i numërimit. Për shembull, një europian që jeton në SHBA mund të rregullojë përdorimin e gradës Celsius për të shfaqur temperaturën në vend të gradës Fahrenheit dhe të konsiderojë të hënën si fillimin e javës në vend të së dielës.

- Janë zgjeruar mundësitë për zmadhimin e shifrave, niveli maksimal i zmadhimit të shifrave është rritur nga 130% në 200%, dhe për të parandaluar që teksti të duket tepër i madh në zmadhim të lartë, tani aplikohet një ndryshim jo-linear i nivelit të zmadhimit (teksti i madh zmadhohet më pak se ai i vogël), që do të lejojë arritjen e lexueshmërisë optimale për njerëzit me probleme shikimi pa rrezikun e përçarjes në kompozitën e ndërfaqes.

- Mbështetje e shfaqjes së videove me gamë dinamike të lartë (HDR) e shfaqur në degën e kaluar është zgjeruar me mundësi për marrjen e informacionit shtesë nga kamera, duke lejuar ruajtjen e imazheve në formatin 'Ultra HDR', në të cilin për kodimin e ngjyrave përdoren 10 bit për kanal. Formati Ultra HDR është plotësisht i përputhshëm me JPEG, duke lejuar që aplikacionet të punojnë me imazhe HDR pa bërë ndryshime dhe, nëse është e nevojshme, t'i shfaqin ato duke përdorur gamën e zakonshme të ndriçimit. Shfaqja në modalitetin HDR sigurohet automatikisht nga platforma në rast se aktivizohet mbështetja HDR në manifestin e aplikacionit ose gjatë thirrjes së Window.setColorMode. Për vizatimin e veçantë të Ultra HDR me OpenGL ose Vulkan mund të përdoret klasa Gainmap.

- Janë kufizuar llojet e aplikacioneve të cilave u lejohet shfaqja e njoftimeve në ekranin e bllokuar. Këto njoftime janë të destinuara për të tërhequr vëmendjen për informacionin që kërkon një reagim të menjëhershëm, siç është marrja e një thirrje të ardhshme ose aktivizimi i alarmeve, prandaj autorizimi për shfaqjen e këtyre njoftimeve tani do të kufizohet vetëm te aplikacionet për realizimin e thirrjeve dhe shfaqjen e sinjaleve paralajmëruese.
- Përmirësohet menaxhimi i animacionit që sinjalizon kalimin ndërmjet ekranesh të ndryshëm (faqeve) në aplikacion gjatë lëvizjes me gishta që zhvendos përmbajtjen. Shtohen komponentë të rinj për animacionin e kalimeve të ekranit të poshtëm dhe anësor, si dhe të kërkimit. Shtohet API për krijimin e efekteve të kalimit të personalizuara në aplikacion.
- Seti i ri i zgjerimeve për kamerën (Camera Extensions) është përditësuar, duke ofruar mundësinë e përdorimit të algoritmeve më të gjatë që kërkojnë llogaritje intensive për përpunimin e imazheve, për shembull, për të përmirësuar cilësinë e fotografive të marra në ndriçim të ulët. Shtohen funksione për parashikimin e vonesave në përpunimin e fotografive, marrjen e informacionit mbi përparimin e përpunimit dhe marrjen e një versioni të shpejtë të fotografisë deri në përfundimin e përgatitjes së imazhit përfundimtar. Implementohet një mënyrë më e optimizuar dhe energjike për parapamjen në SurfaceView. Gjatë përdorimit të zgjerimeve, ofrohet mbështetje për prekje për fokusimin dhe zmadhimin.
- Ofrohet mbështetje për përdorimin e mundësive të integruara në kamera për zmadhimin dhe kadron e imazheve RAW të transmetuara.
- Për kufjet me tel të lidhura përmes USB, është shtuar mundësia e aplikimit të formateve të zërit pa humbje (lossless). Në API është shtuar klasi AudioMixerAttributes, që lejon dërgimin direkt të zërit në pajisje, pa miksim, rregullim të volumit dhe përpunim efektesh.
- Në API-në grafike është implementuar klasa Mesh, që lejon krijimin e varianteve të veta të rrjetës poligonale me shader të vrimave dhe fragmenteve, të shkruara në gjuhën AGSL.
- Shtohet mundësia për përshpejtimin e harduerit për vizatimin në buffer, e realizuar përmes klasës HardwareBufferRenderer.
- Në klasën Path, e cila lejon krijimin e grafikës vektoriale bazuar në konturet gjeometrike të përbëra, është shtuar mbështetje për interpolimin midis kontureve me strukturë të ngjashme për të krijuar efektin e morfimit dhe përdorimin e iteratorit PathIterator për të kaluar sequentialisht të gjitha segmentet e konturit.
- JanĂ« zgjeruar mundĂ«sitĂ« pĂ«r lidhjen e cilĂ«simeve tĂ« veçanta tĂ« gjuhĂ«s me aplikacione tĂ« ndryshme. ĂshtĂ« ofruar mundĂ«sia pĂ«r tĂ« pĂ«rcaktuar listĂ«n e gjuhĂ«ve qĂ« do tĂ« shfaqen nĂ« konfiguruesin Android gjatĂ« zgjedhjes sĂ« gjuhĂ«s pĂ«r njĂ« aplikacion tĂ« veçantĂ«.
- Zonat në të cilat sistemi tregon informacionin e lidhur me privatësinë të përcaktuar nga zhvilluesi në Formën e Play Console janë zgjeruar, si politika për ofrimin e të dhënave të tretëve. Për shembull, këto informacione tani shfaqen në dialogun e kërkesës për autorizim.
- Në aplikacionet që përdorin menaxherë që punojnë në sfond, tani është e nevojshme të specifikohet lloji i shërbimit në sfond. Gjatë punës, sistemi verifikon përputhjen e llojit të shërbimit të specifikuar, kërkesave të autorizimit dhe API-së së përdorur. Për shembull, nëse një aplikacion ka specifikuar llojin e shërbimit në sfond FOREGROUND_SERVICE_TYPE_LOCATION, nënkuptohet se mund të kërkohen autorizime ACCESS_COARSE_LOCATION ose ACCESS_FINE_LOCATION.
- JanĂ« bĂ«rĂ« ndryshime pĂ«r tĂ« rritur sigurinĂ«: Ă«shtĂ« ndaluar dĂ«rgimi i kĂ«rkesave intent nga aplikacionet pĂ«r disa komponente tĂ« brendshme tĂ« platformĂ«s. Kodi i ngarkuar dinamikisht tani duhet tĂ« shĂ«nohet me atributin e aksesit nĂ« mĂ«nyrĂ« tĂ« lexueshme vetĂ«m. NĂ« funksionet ZipFile(String) dhe ZipInputStream.getNextEntry() Ă«shtĂ« ndaluar pĂ«rpunimi i arkivave zip, rrugĂ«t e tĂ« cilave fillojnĂ« me simbolin â/â ose pĂ«rmbajnĂ« sekuencĂ«n â..â. JanĂ« kufizuar ekzekutimi i punĂ«ve nga menaxherĂ«t nĂ« sfond dhe janĂ« pĂ«rditĂ«suar kufizimet nĂ« thirrjen e ndĂ«rfaqeve programore, qĂ« nuk ofrohen nĂ« SDK.
- Kur lidhet pajisja me USB në një kompjuter desktop, përveç modave të mëparshme të ndërveprimit, të tilla si transmetimi i skedarëve, karikimi, ndarjen e internetit etj., tani është e mundur të përdorin smartphone-n si një kamerë web (rezimi UVC, USB Video Class). Nga default, kjo mundësi është e çaktivizuar, por mund të aktivizohet nëse ka qasje root.
- Përmirësimi i funksionimit të platformës në tableta dhe pajisje me ekrane të palosshme është vazhduar. Janë ofruar biblioteka që sigurojnë parashikimin e ngjarjeve të lidhura me lëvizjen e treguesit dhe sigurojnë vonesa të ulëta gjatë punës me stilus. Janë ofruar modele ndërfaqe të ekranit të madh, që marrin parasysh aplikacione si rrjetet sociale, komunikimet, përmbajtjet multimediale, leximin dhe blerjen.
- ĂshtĂ« shtuar njĂ« autorizim tĂ« veçantĂ« pĂ«r tĂ« lejuar aplikacionet tĂ« nisin veprime kur ndodhen nĂ« sfond. Aktivizimi gjatĂ« qĂ«ndrimit nĂ« sfond Ă«shtĂ« kufizuar pĂ«r tĂ« mos e penguar pĂ«rdoruesin ndĂ«rsa punon me aplikacionin aktual. Aplikacionet aktive kanĂ« marrĂ« mĂ« shumĂ« mundĂ«si pĂ«r kontrollin e aktivizimit tĂ« veprimeve nga aplikacione tĂ« tjera me tĂ« cilat janĂ« nĂ« ndĂ«rveprim.
- ĂshtĂ« optimizuar sistemi i menaxhimit tĂ« memories pĂ«r tĂ« ndarĂ« mĂ« eficent burimet e aplikacioneve qĂ« funksionojnĂ« nĂ« sfond. Pas disa sekondash nga kalimi i aplikacionit nĂ« gjendjen e pĂ«rmndyrjes, puna nĂ« sfond kufizohet nĂ« punĂ«n me API-tĂ« qĂ« menaxhuan ciklin e jetĂ«s sĂ« aplikacionit, si API-tĂ« e ShĂ«rbimeve tĂ« ParĂ«, JobScheduler, dhe WorkManager.
- Njoftimet e furnizuara me flamurin FLAG_ONGOING_EVENT tani mund të refuzohen kur shfaqen në një pajisje me ekran të zhbllokuar. Nëse pajisja është në modin e bllokimit të ekranit, njoftimet e tilla do të mbeten të pazbuluara. Njoftimet që janë të rëndësishme për funksionimin e sistemit do të mbeten gjithashtu të pazbuluara.
- Në API-në e PackageInstaller janë shtuar metoda të reja: requestUserPreapproval(), e cila lejon katalogun e aplikacioneve të shtyjë ngarkimin e paketave APK deri sa të marrë konfirmimin për instalim nga përdoruesi; setRequestUpdateOwnership(), që lejon instaluesin të ruajë operacionet e ardhshme të përditësimit të aplikacionit; setDontKillApp(), që lejon vendosjen e mundësive të tjera për aplikacionin gjatë punës me programin. Në API-në e InstallConstraints, instaluesit kanë mundësinë të aktivizojnë përditësimin e aplikacionit në momentet kur aplikacioni nuk përdoret.
- Punët për përmirësimin e funksionimit të platformës në tabletë dhe pajisje me ekrane të palosshme vazhdojnë. Rekomandimet për zhvillimin e aplikacioneve për pajisje me ekrane të mëdha janë përditësuar dhe janë shtuar template standarde të ndërfaqes për ekrane të mëdha, duke marrë parasysh aplikime si rrjetet sociale, komunikimi, përmbajtjen multimedia, leximin dhe blerjet. Një version paraprak i Cross device SDK është propozuar me mjete për zhvillimin e aplikacioneve që punojnë saktë me tipe të ndryshme pajisjesh (smartphone, tabletë, televizio të mençur etj.) dhe forma të ndryshme përdorimi.
- Optimizimi i koordinatave të ekzekutimit të punëve të rëndë në sfond, si shkarkimi i skedareve të mëdha kur ka lidhje Wi-Fi është kryer. Janë bërë ndryshime në API-në për fillimin e shërbimeve me prioritet (Foreground Service) dhe planifikimin e detyrave (JobScheduler), në të cilin është shtuar funksionaliteti i ri për punët e iniciuara nga përdoruesi që lidhen me transferimin e të dhënave. Janë vendosur kërkesat për specifikimin e llojit të shërbimeve me prioritet të nisura (punë me kamerën, sinkronizimin e të dhënave, riprodhimin e përmbajtjeve multimediale, ndjekjen e vendndodhjes, aksesin në mikrofon etj.). Janë lehtësuar kushtet për aktivizimin e shkarkimit të të dhënave, për shembull, vetëm për shkarkim kur akses është i mundur përmes Wi-Fi.
- Sistemi i brendshĂ«m i shpĂ«rndarjes sĂ« mesazheve pĂ«r aplikacione (sistemi i shpĂ«rndarjes) Ă«shtĂ« optimizuar pĂ«r tĂ« ulur konsumimin e energjisĂ« dhe pĂ«r tĂ« pĂ«rmirĂ«suar reagimin. Pranimi nga aplikacionet i kanaleve tĂ« regjistruara tĂ« mesazheve Ă«shtĂ« pĂ«rmirĂ«suar â mesazhet mund tĂ« renditen nĂ« kuotat, tĂ« bashkohen (p.sh., njĂ« seri mesazhesh BATTERY_CHANGED do tĂ« agregohen nĂ« njĂ«) dhe tĂ« dĂ«rgohen vetĂ«m pasi aplikacioni tĂ« dalĂ« nga gjendja e ruajtur.
- Limiti i maksimumit për numrin e aplikacioneve të ruajtura është rritur, çka ka lejuar uljen e numrit të aplikacioneve që lansohet në modalitetin "të ftohtë" (dmth. ato që nuk janë ruajtur në memorie dhe lansohet më ngadalë). Për pajisjet me 8 GB RAM, pas ndryshimeve në kufizime, numri i lansimeve të "ftohta" të aplikacioneve u ul me 20%, ndërsa për pajisjet me 12 GB - me 30%.
- Përdorimi i funksionit të ekzekutimit të operacioneve në kohë të saktë (alarma të saktë) tani kërkon marrjen e një autorizimi të veçantë SCHEDULE_EXACT_ALARM, pasi përdorimi i këtij funksionaliteti mund të ndikojë negativisht në kohëzgjatjen e baterisë dhe të çojë në rritjen e konsumit të burimeve (për detyrat që ekzekutohen sipas orarit, rekomandohet përdorimi i aktivizimit në kohë të afërt). Aplikacionet që implementojnë kalendarin dhe orarin, që përdorin aktivizimin në kohë të saktë, në instalim duhet të ndihmohen me autorizimin USE_EXACT_ALARM. Publikimet në katalogun Google Play për aplikacione me autorizimin USE_EXACT_ALARM lejohet vetëm për programe që implementojnë alarm, timer dhe kalendar me njoftime për ngjarjet.
- ĂshtĂ« ofruar mundĂ«sia pĂ«r tĂ« specificuar cilĂ«simet e gjuhĂ«s, tĂ« lidhura me aplikacione tĂ« veçanta. TĂ« zhvilluesit e aplikacioneve tani mund tĂ« ndryshojnĂ« parametrat localeConfig nĂ«pĂ«rmjet thirrjes LocaleManager.setOverrideLocaleConfig pĂ«r tĂ« pĂ«rcaktuar listĂ«n e gjuhĂ«ve qĂ« do tĂ« shfaqen pĂ«r aplikacionin nĂ« ndĂ«rfaqen e cilĂ«simeve Android.
- Shtuar API-në Grammatical Inflection për të lehtësuar shtimin e përkthimeve të elementeve të ndërfaqes që marrin parasysh gjuhët me sistem gjinor.
- Për të parandaluar kapjen e kërkesave intent nga aplikacione të dëmshme, në versionin e ri është ndaluar dërgimi i intenteve pa specifikimin e qartë të paketës ose komponentit të brendshëm.
- Siguria e ngarkesĂ«s dinamike tĂ« kodit (DCL, Dynamic Code Loading) Ă«shtĂ« rritur â pĂ«r t'u shmangur inkuadrimit tĂ« kodit tĂ« dĂ«mshĂ«m nĂ« skedarĂ«t ekzekutues qĂ« ngarkohen dinamkisht, kĂ«ta skedarĂ« tani duhet tĂ« kenĂ« leje qĂ« lejojnĂ« vetĂ«m leximin.
- Instalimi i aplikacioneve për të cilat është deklaruar një version SDK më të ulët se 23 është i ndaluar, duke bllokuar kështu anashkalimin e kufizimeve të autorizimit përmes lidhjeve me API të vjetra (verza API 22 është e ndaluar, pasi në versionin 23 (Android 6.0) u prezantua një model i ri për menaxhimin e qasjes, i cili lejon të kërkohet qasja në burimet e sistemi në kohën reale). Aplikacionet e instaluara më parë, që përdorin API të vjetra, do të vazhdojnë të funksionojnë pas përditësimit të Android.
- Propozohet API Credential Manager, qĂ« lejon organizimin e hyrjes nĂ« aplikacione duke pĂ«rdorur kredencialet e ofruesve tĂ« jashtĂ«m tĂ« autentifikimit. ĂshtĂ« realizuar mbĂ«shtetje pĂ«r teknologjinĂ« Passkeys, qĂ« lejon pĂ«rdoruesin tĂ« realizojĂ« autentifikimin pa fjalĂ«kalime duke pĂ«rdorur identifikues biometrikĂ«, siç janĂ« gishtat e dorĂ«s ose njohja e fytyrĂ«s. ĂshtĂ« pĂ«rmirĂ«suar ndĂ«rfaqja pĂ«r zgjedhjen e llogarive.
- NĂ« Android Runtime (ART) Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r OpenJDK 17. Bibliotekat Java bazĂ« tĂ« platformĂ«s dhe mjetet pĂ«r zhvillimin e aplikacioneve janĂ« pĂ«rditĂ«suar nĂ« OpenJDK 17. ĂshtĂ« shtuar mbĂ«shtetje pĂ«r mundĂ«sitĂ« gjuhĂ«sore dhe klasat Java tĂ« disponueshme nĂ« OpenJDK 17, siç janĂ« klasat e tipit record, vargjet shumĂ«-rreshtore dhe pĂ«rputhja me modelin nĂ« operatorin "instanceof".
- Në Android Runtime janë përdorur metoda më të avancuara të kompresimit, të cilat kanë lejuar uljen e madhësisë së skedarëve mesatarisht me 9.3% pa dëmtuar performancën.
- ĂshtĂ« ndryshuar mĂ«nyra e pĂ«rditĂ«simit tĂ« certifikatave tĂ« autoriteteve tĂ« besimit (CA). Certifikatat sistemike nuk do tĂ« jenĂ« mĂ« tĂ« lidhura me firmware-in, por do tĂ« dorĂ«zohen si njĂ« paketĂ« e veçantĂ«, duke u pĂ«rditĂ«suar pĂ«rmes Google Play. Ky qasje do ta thjeshtĂ«sojĂ« mbajtjen e certifikatave tĂ« pĂ«rditĂ«suara dhe do tĂ« mundĂ«sojĂ« heqjen e certifikatave tĂ« autoriteteve tĂ« besimit tĂ« kompromentuara, si dhe do tĂ« parandalojĂ« prodhuesit e pajisjeve qĂ« tĂ« manipulojnĂ« listat e certifikatave rrĂ«njorĂ« dhe do ta bĂ«jĂ« procesin e pĂ«rditĂ«simit tĂ« tyre tĂ« pavarur nga pĂ«rditĂ«simi i firmware-it. Nga ana tjetĂ«r, mĂ«nyra e re e dorĂ«zimit nuk do tĂ« lejojĂ« pĂ«rdoruesin tĂ« bĂ«jĂ« ndryshime nĂ« certifikatate sistemike, madje edhe nĂ«se ai ka akses root nĂ« sistem dhe e kontrollon plotĂ«sisht firmware-in.
Burimi: opennet.ru









