Release av den mobila plattformen Android 12

Google har publicerat releasen av den öppna mobila plattformen Android 12. Källtexterna förknippade med den nya releasen publiceras i projektets Git-repository (branch android-12.0.0_r1). Firmware-uppdateringar är förberedda för enheter i Pixel-serien, såväl som för smartphones tillverkade av Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo och Xiaomi. Dessutom har universella GSI (Generic System Images) sammansättningar skapats, lämpliga för olika enheter baserade på ARM64 och x86_64 arkitekturer.

Huvudsakliga innovationer:

  • En av de viktigaste uppdateringarna av gränssnittsdesignen i projektets historia föreslogs. Den nya designen implementerar "Material You"-konceptet, utpekat som nästa generation av Material Design. Det nya konceptet kommer att tillämpas automatiskt på alla plattformar och gränssnittselement och kommer inte att kräva att applikationsutvecklare gör några ändringar. I juli är det planerat att förse applikationsutvecklare med den första stabila versionen av en ny verktygslåda för att utveckla grafiska gränssnitt - Jetpack Compose.
    Release av den mobila plattformen Android 12

    Själva plattformen har en ny widgetdesign. Widgetar har gjorts mer synliga, hörn har rundats bättre och möjligheten att använda dynamiska färger som matchar systemtemat har tillhandahållits. Lade till interaktiva kontroller som kryssrutor och omkopplare (CheckBox, Switch och RadioButton), till exempel, så att du kan redigera uppgiftslistor i TODO-widgeten utan att öppna programmet.

    Release av den mobila plattformen Android 12

    Implementerade en smidigare visuell övergång till applikationer som startas från widgets. Personaliseringen av widgets har förenklats - en knapp har lagts till (en cirkel med en penna) för att snabbt konfigurera om widgetens placering på skärmen, som visas när du trycker på widgeten under en längre tid.

    Release av den mobila plattformen Android 12Release av den mobila plattformen Android 12

    Ytterligare lägen finns för att begränsa storleken på widgeten och möjligheten att använda den adaptiva layouten för widgetelement (responsiv layout) för att skapa standardlayouter som ändras beroende på storleken på det synliga området (du kan till exempel skapa separata layouter för surfplattor och smartphones). Widgetväljarens gränssnitt implementerar dynamisk förhandsgranskning och möjligheten att visa en beskrivning av widgeten.

    Release av den mobila plattformen Android 12
  • Lade till möjligheten att automatiskt anpassa systempaletten till färgen på den valda tapeten - systemet känner automatiskt av de rådande färgerna, justerar den aktuella paletten och tillämpar ändringar på alla gränssnittselement, inklusive meddelandefältet, låsskärmen, widgets och volymkontroll.
  • Nya animerade effekter har implementerats, såsom gradvis zoomning och mjuk förskjutning av områden när du rullar, visas och flyttar element på skärmen. Till exempel, när du avbryter en avisering på låsskärmen, expanderar tidsindikatorn automatiskt och tar upp det utrymme som aviseringen tidigare upptog.
  • Utformningen av rullgardinsmenyn med aviseringar och snabbinställningar har gjorts om. Alternativ för Google Pay och smart hemstyrning har lagts till i snabbinställningarna. Om du håller ned strömbrytaren visas Google Assistant, som du kan beordra för att ringa ett samtal, öppna en app eller läsa en artikel högt. Meddelanden med innehåll som anges i ansökan ges i allmän form.
    Release av den mobila plattformen Android 12
  • Lade till Stretch overscroll-effekt för att indikera att användaren har flyttat bortom rullningsområdet och nått slutet av innehållet. Med den nya effekten tycks innehållsbilden sträcka sig och springa tillbaka. Det nya end-of-scroll-beteendet är aktiverat som standard, men det finns ett alternativ i inställningarna för att återgå till det gamla beteendet.
  • Gränssnittet har optimerats för enheter med vikbara skärmar.
    Release av den mobila plattformen Android 12
  • Smidigare ljudövergångar har implementerats - när du byter från en applikation som matar ut ljud till en annan, dämpas nu ljudet av den första mjukt, och den andra ökar mjukt, utan att lägga ett ljud över det andra.
  • Gränssnittet för att hantera nätverksanslutningar i snabbinställningsblocket, panelen och systemkonfiguratorn har moderniserats. En ny internetpanel har lagts till som gör att du snabbt kan växla mellan olika leverantörer och diagnostisera problem.
    Release av den mobila plattformen Android 12
  • Lade till möjligheten att skapa skärmdumpar som täcker inte bara det synliga området, utan även innehållet i rullningsområdet. Möjligheten att hålla innehåll utanför det synliga området fungerar för alla applikationer som använder klassen View för utdata. För att implementera stöd för rullning av skärmdumpar i program som använder specifika gränssnitt har ScrollCapture API föreslagits.
    Release av den mobila plattformen Android 12
  • Funktionen för automatisk rotering av skärminnehåll har förbättrats, som nu kan använda ansiktsigenkänning från den främre kameran för att avgöra om skärmen behöver roteras, till exempel när en person använder telefonen liggandes. För att säkerställa konfidentialitet behandlas information i farten utan mellanlagring av bilder. Funktionen är för närvarande endast tillgänglig på Pixel 4 och nyare smartphones.
  • Förbättrat bild-i-bild-läge (PIP, Picture in Picture) och ökad mjukhet i övergångseffekterna. Om du aktiverar automatisk övergång till PIP med en up-to-home-gest (växling uppåt på skärmens nederkant) växlas applikationen nu omedelbart till PIP-läge, utan att vänta på att animeringen ska slutföras. Förbättrad storleksändring av PIP-fönster med icke-videoinnehåll. Lade till möjligheten att dölja PIP-fönstret genom att dra det till vänster eller höger kant av skärmen. Beteendet vid beröring av ett PIP-fönster har ändrats - en knapptryckning visar nu kontrollknapparna och en dubbeltryckning ändrar storleken på fönstret.
  • Prestandaoptimeringar:
    • Betydande optimering av systemets prestanda genomfördes - belastningen på processorn för huvudsystemtjänsterna minskade med 22%, vilket i sin tur ledde till en ökning av batteritiden med 15%. Genom att minska låskonflikter, minska latens och optimera I/O, ökar prestandan vid övergång från en applikation till en annan och applikationens starttid minskar.

      I PackageManager, när man arbetar med ögonblicksbilder i skrivskyddat läge, minskas låskonflikten med 92 %. Binders interprocesskommunikationsmotor använder lätt cachelagring för att minska latensen med upp till 47 gånger för vissa typer av samtal. Förbättrad prestanda för bearbetning av dex-, odex- och vdex-filer, vilket resulterar i snabbare appladdningstider, särskilt på enheter med lågt minne. Starten av applikationer från aviseringar har påskyndats, till exempel är lanseringen av Google Foto från en avisering nu 34 % snabbare.

      Prestandan för databasfrågor har förbättrats genom att använda inline-optimeringar i CursorWindow-operationen. För små datamängder har CursorWindow blivit 36 ​​% snabbare, och för uppsättningar med mer än 1000 rader kan hastigheten vara upp till 49 gånger.

      Kriterier föreslås för att klassificera enheter efter prestanda. Baserat på en enhets kapacitet tilldelas den en prestandaklass, som sedan kan användas i applikationer för att begränsa funktionaliteten hos codecs på enheter med låg effekt eller för att hantera multimediainnehåll av högre kvalitet på kraftfull hårdvara.

    • Ett applikationsviloläge har implementerats, vilket tillåter, om användaren inte uttryckligen har interagerat med programmet under en längre tid, att automatiskt återställa tidigare beviljade behörigheter till applikationen, stoppa exekvering, returnera resurser som används av applikationen, såsom minne, och blockera lanseringen av bakgrundsarbete och sändningen av push-meddelanden. Läget kan användas för de flesta applikationer och låter dig skydda användardata som länge bortglömda program fortsätter att ha tillgång till. Om så önskas kan viloläget inaktiveras selektivt i inställningarna.
    • Animationen vid rotation av skärmen har optimerats, vilket minskar fördröjningen före rotation med cirka 25 %.
    • Strukturen inkluderar en ny högpresterande sökmotor AppSearch, som låter dig indexera information på enheten och utföra fulltextsökningar med rankningsresultat. AppSearch tillhandahåller två typer av index - för att organisera sökningar i enskilda applikationer och för att söka i hela systemet.
    • Lade till Game Mode API och motsvarande inställningar som gör att du kan hantera spelets prestandaprofil – till exempel kan du offra prestanda för att förlänga batteritiden eller använda alla tillgängliga resurser för att uppnå maximal FPS.
    • Lade till play-as-you-download-funktion för att ladda ner spelresurser i bakgrunden under installationsprocessen, så att du kan börja spela innan nedladdningen är klar. Ansökan.
    • Ökad lyhördhet och reaktionshastighet vid arbete med aviseringar. Till exempel, när en användare trycker på en avisering, tar den nu omedelbart dem till den associerade appen. Applikationer begränsar användningen av aviseringstrampoliner.
    • Optimerade IPC-samtal i Binder. Genom att använda en ny cachestrategi och eliminera låskonflikter reducerades latensen avsevärt. Sammantaget har prestanda för Binder-samtal ungefär fördubblats, men det finns några områden där ännu mer betydande hastigheter har uppnåtts. Till exempel blev refContentProvider() 47 gånger snabbare, releaseWakeLock() 15 gånger snabbare och JobScheduler.schedule() 7.9 gånger snabbare.
    • För att förhindra potentiella prestandaproblem är applikationer förbjudna att köra förgrundstjänster medan de körs i bakgrunden, förutom i några få speciella fall. För att börja arbeta i bakgrunden rekommenderas det att använda WorkManager. För att förenkla övergången har en ny typ av arbete föreslagits i JobScheduler, som startar omedelbart, har ökad prioritet och nätaccess.
  • Ändringar som påverkar säkerhet och integritet:
    • Gränssnittet för Privacy Dashboard har implementerats med en allmän översikt över alla behörighetsinställningar, så att du kan förstå vad användardataapplikationer har tillgång till. Gränssnittet innehåller också en tidslinje som visualiserar historiken för appåtkomst till mikrofon, kamera och platsdata. För varje applikation kan du se detaljer och anledningar till att få åtkomst till känsliga uppgifter.
      Release av den mobila plattformen Android 12
    • Mikrofon- och kameraaktivitetsindikatorer har lagts till på panelen, som visas när en applikation kommer åt kameran eller mikrofonen. När du klickar på indikatorerna visas en dialogruta med inställningar som låter dig bestämma vilken applikation som fungerar med kameran eller mikrofonen, och vid behov återkalla behörigheter.
    • Omkopplare har lagts till i popup-blocket för snabbinställningar, med vilka du med kraft kan stänga av mikrofonen och kameran. Efter avstängning kommer försök att komma åt kameran och mikrofonen resultera i ett meddelande och tomma data skickas till applikationen.
      Release av den mobila plattformen Android 12
    • Lade till ett nytt meddelande som visas längst ned på skärmen när ett program försöker läsa innehållet i urklipp via ett anrop till funktionen getPrimaryClip(). Om innehåll från urklipp kopieras i samma applikation som det lades till i, visas inte meddelandet.
    • Lade till en separat behörighet BLUETOOTH_SCAN för att skanna närliggande enheter via Bluetooth. Tidigare tillhandahölls denna funktion baserat på åtkomst till enhetens platsinformation, vilket resulterade i behovet av att ge ytterligare behörigheter till applikationer som kräver ihopparning med en annan enhet via Bluetooth.
    • Dialogrutan för att ge tillgång till information om enhetens plats har moderniserats. Användaren ges nu möjlighet att förse applikationen med information om den exakta platsen eller endast tillhandahålla ungefärlig data, samt begränsa behörigheten till enbart den aktiva sessionen med programmet (neka åtkomst i bakgrunden). Noggrannhetsnivån för de data som returneras vid val av en ungefärlig plats kan ändras i inställningarna, inklusive i förhållande till enskilda applikationer.
      Release av den mobila plattformen Android 12
    • Applikationsutvecklare ges möjlighet att inaktivera popup-varningar som överlappar innehåll. Tidigare styrdes möjligheten att visa överlappande fönster genom att kräva att behörigheter skulle verifieras under installationen av applikationer som visar överlappande fönster. Det fanns inga tillgängliga verktyg för att påverka överlappningen av innehåll från applikationer vars fönster överlappar varandra. När du använder Window#setHideOverlayWindows()-anropet kommer nu alla överlappande fönster att döljas automatiskt. Till exempel kan dölja aktiveras vid visning av särskilt viktig information, såsom transaktionsbekräftelse.
    • Appar ges ytterligare inställningar för att begränsa aviseringsåtgärder medan skärmen är låst. Tidigare hade du bara möjlighet att kontrollera synligheten för aviseringar medan skärmen är låst, men nu kan du aktivera obligatorisk autentisering för att utföra eventuella åtgärder med aviseringar medan skärmen är låst. Till exempel kan en meddelandeapp kräva autentisering innan du tar bort eller markerar ett meddelande som läst.
    • Lade till PackageManager.requestChecksums() API för att begära och verifiera kontrollsumman för ett installerat program. Algoritmer som stöds inkluderar SHA256, SHA512 och Merkle Root.
    • WebView-webbmotorn implementerar möjligheten att använda SameSite-attributet för att kontrollera Cookie-bearbetning. Värdet "SameSite=Lax" begränsar cookien som skickas för underförfrågningar mellan webbplatser, som att begära en bild eller ladda innehåll via en iframe från en annan webbplats. I läget "SameSite=Strikt" skickas inte cookies för någon form av förfrågningar mellan webbplatser, inklusive alla inkommande länkar från externa webbplatser.
    • Vi fortsätter att arbeta med att randomisera MAC-adresser för att eliminera möjligheten till enhetsspårning när den är ansluten till ett trådlöst nätverk. Oprivilegierade applikationer har begränsad åtkomst till enhetens MAC-adress och anropet getHardwareAddress() returnerar nu ett nollvärde.
  • Förändringar och förbättringar på låg nivå för applikationsutvecklare:
    • Lade till möjligheten att anpassa gränssnittselement till enheter med rundade skärmar. Utvecklare kan nu få information om skärmavrundningar och justera gränssnittselement som faller på osynliga hörnområden. Genom det nya RoundedCorner API kan du ta reda på parametrar som radien och mitten av avrundningen, och genom Display.getRoundedCorner() och WindowInsets.getRoundedCorner() kan du bestämma koordinaterna för varje avrundat hörn på skärmen.
      Release av den mobila plattformen Android 12
    • Ett nytt CompanionDeviceService API har lagts till, med vilket du kan aktivera applikationer som styr medföljande enheter, som smartklockor och träningsspårare. API:et löser problemet med att starta och ansluta de nödvändiga applikationerna när en medföljande enhet dyker upp i närheten. Systemet aktiverar tjänsten när en enhet är i närheten och skickar ett meddelande när enheten kopplas bort eller när enheten går in i eller lämnar scopet. Appar kan också använda den nya medföljande enhetsprofilen för att enklare ställa in behörigheter för att gå med i en enhet.
    • Förbättrat kapacitetsprognossystem. Applikationer kan nu begära information om den förväntade totala genomströmningen i förhållande till operatören, specifikt trådlöst nätverk (Wi-Fi SSID), nätverkstyp och signalstyrka.
    • Tillämpningen av vanliga visuella effekter, såsom suddighet och färgförvrängning, har förenklats och kan nu appliceras med RenderEffect API på vilket som helst RenderNode-objekt eller hela det synliga området, inklusive i en kedja med andra effekter. Den här funktionen låter dig till exempel göra en bild som visas via ImageView oskärpa utan att explicit kopiera, bearbeta och ersätta bitmappen, och flytta dessa åtgärder till plattformssidan. Dessutom föreslås Window.setBackgroundBlurRadius() API, med vilket du kan suddra bakgrunden i ett fönster med en frostat glaseffekt och markera djupet genom att göra utrymmet som omger fönstret suddigt.
      Release av den mobila plattformen Android 12
    • Integrerade verktyg för omkodning av mediaströmmar som kan användas i miljöer med en kameraapplikation som sparar video i HEVC-formatet, för att säkerställa kompatibilitet med applikationer som inte stöder detta format. För sådana applikationer har en automatisk omkodningsfunktion lagts till i det vanligare AVC-formatet.
    • Lagt till stöd för AVIF (AV1 Image Format) bildformat, som använder intra-frame komprimeringsteknik från AV1 videokodningsformat. Behållaren för att distribuera komprimerad data i AVIF är helt lik HEIF. AVIF stöder både bilder i HDR (High Dynamic Range) och Wide-gamut färgrymd, såväl som i standard dynamic range (SDR).
    • En enhetlig OnReceiveContentListener API föreslås för att infoga och flytta utökade typer av innehåll (formaterad text, bilder, videor, ljudfiler, etc.) mellan applikationer som använder olika datakällor, inklusive urklipp, tangentbord och dra-och-släpp-gränssnitt.
    • En taktil återkopplingseffekt, implementerad med hjälp av vibrationsmotorn inbyggd i telefoner, har lagts till, vars frekvens och intensitet beror på parametrarna för det aktuella ljudet. Den nya effekten låter dig känna ljudet fysiskt och kan användas för att lägga till ytterligare realism till spel och ljudprogram.
    • I uppslukande läge, där programmet visas i helskärm med dolda servicepaneler, förenklas navigeringen med hjälp av kontrollgester. Till exempel kan böcker, videor och foton nu navigeras med en enda svepgest.
    • Som en del av Mainline-projektet, som låter dig uppdatera enskilda systemkomponenter utan att uppdatera hela plattformen, har nya uppdateringsbara systemmoduler tagits fram utöver de 22 moduler som finns i Android 11. Uppdateringarna påverkar icke-hårdvarukomponenter som laddas ner via Google Play separat från OTA-firmwareuppdateringar från tillverkaren. Bland de nya modulerna som kan uppdateras via Google Play utan att uppdatera firmware finns ART (Android Runtime) och en modul för videoomkodning.
    • Ett API har lagts till WindowInsets-klassen för att bestämma visningspositionen för kamera- och mikrofonanvändningsindikatorer (indikatorer kan överlappa kontroller i program som distribueras till helskärm, och genom det specificerade API:et kan applikationen justera sitt gränssnitt).
    • För centralt hanterade enheter har ett alternativ lagts till för att förhindra användning av switchar för att stänga av mikrofonen och kameran.
    • För CDM-applikationer (Companion Device Manager) som körs i bakgrunden och som styr medföljande enheter som smarta klockor och träningsspårare, är det möjligt att lansera förgrundstjänster.
    • Istället för en utgåva för bärbara enheter, beslutade Android Wear, tillsammans med Samsung, att utveckla en ny enhetlig plattform som kombinerar funktionerna hos Android och Tizen.
    • Möjligheterna för Android-utgåvor för bilinfotainmentsystem och smarta TV-apparater har utökats.

    Källa: opennet.ru

  • Lägg en kommentar