Frigivelse af den mobile platform Android 12

Google har offentliggjort udgivelsen af ​​den åbne mobilplatform Android 12. Kildeteksterne, der er knyttet til den nye udgivelse, er udgivet i projektets Git-lager (gren android-12.0.0_r1). Firmwareopdateringer er forberedt til enheder i Pixel-serien såvel som til smartphones fremstillet af Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo og Xiaomi. Derudover er der skabt universelle GSI (Generic System Images) samlinger, der er egnede til forskellige enheder baseret på ARM64 og x86_64 arkitekturer.

Vigtigste innovationer:

  • En af de mest betydningsfulde opdateringer af grænsefladedesign i projektets historie blev foreslået. Det nye design implementerer "Material You"-konceptet, udråbt som den næste generation af Material Design. Det nye koncept vil automatisk blive anvendt på alle platforme og interface-elementer og vil ikke kræve, at applikationsudviklere foretager ændringer. I juli er det planlagt at give applikationsudviklere den første stabile udgivelse af et nyt værktøjssæt til udvikling af grafiske grænseflader - Jetpack Compose.
    Frigivelse af den mobile platform Android 12

    Selve platformen har et nyt widget-design. Widgets er blevet gjort mere synlige, hjørner er blevet bedre afrundet, og muligheden for at bruge dynamiske farver, der matcher systemtemaet, er blevet givet. Tilføjede interaktive kontroller såsom afkrydsningsfelter og kontakter (CheckBox, Switch og RadioButton), for eksempel, så du kan redigere opgavelister i TODO-widgetten uden at åbne applikationen.

    Frigivelse af den mobile platform Android 12

    Implementeret en jævnere visuel overgang til applikationer lanceret fra widgets. Personaliseringen af ​​widgets er blevet forenklet - der er tilføjet en knap (en cirkel med en blyant) til hurtigt at omkonfigurere placeringen af ​​widgetten på skærmen, som vises, når du trykker på widgetten i længere tid.

    Frigivelse af den mobile platform Android 12Frigivelse af den mobile platform Android 12

    Der findes yderligere tilstande til at begrænse størrelsen af ​​widgetten og muligheden for at bruge det adaptive layout af widgetelementer (responsivt layout) til at skabe standardlayouts, der ændrer sig afhængigt af størrelsen af ​​det synlige område (du kan f.eks. oprette separate layouts for tablets og smartphones). Widgetvælgergrænsefladen implementerer dynamisk forhåndsvisning og muligheden for at vise en beskrivelse af widgetten.

    Frigivelse af den mobile platform Android 12
  • Tilføjet muligheden for automatisk at tilpasse systempaletten til farven på det valgte tapet - systemet registrerer automatisk de fremherskende farver, justerer den aktuelle palet og anvender ændringer på alle interface-elementer, herunder meddelelsesområdet, låseskærmen, widgets og volumenkontrol.
  • Nye animerede effekter er blevet implementeret, såsom gradvis zoom og jævn forskydning af områder, når der rulles, vises og flyttes elementer på skærmen. For eksempel, når du annullerer en notifikation på låseskærmen, udvides tidsindikatoren automatisk og optager den plads, som notifikationen tidligere optog.
  • Udformningen af ​​rullemenuen med meddelelser og hurtige indstillinger er blevet omdesignet. Muligheder for Google Pay og smart home control er blevet tilføjet til de hurtige indstillinger. Hvis du holder tænd/sluk-knappen nede, åbnes Google Assistant, som du kan kommandere til at foretage et opkald, åbne en app eller læse en artikel højt. Meddelelser med indhold specificeret af ansøgningen gives i en generel form.
    Frigivelse af den mobile platform Android 12
  • Tilføjet Stretch overscroll-effekt for at angive, at brugeren har bevæget sig ud over rulleområdet og nået slutningen af ​​indholdet. Med den nye effekt ser indholdsbilledet ud til at strække sig og springe tilbage. Den nye end-of-scroll-adfærd er aktiveret som standard, men der er en mulighed i indstillingerne for at vende tilbage til den gamle adfærd.
  • Interfacet er optimeret til enheder med foldeskærme.
    Frigivelse af den mobile platform Android 12
  • Blødere lydovergange er blevet implementeret - når der skiftes fra en applikation, der udsender lyd til en anden, er lyden af ​​den første nu jævnt dæmpet, og den anden øges jævnt, uden at den ene lyd overlejres på den anden.
  • Interfacet til styring af netværksforbindelser i hurtigindstillingsblokken, panelet og systemkonfiguratoren er blevet moderniseret. Der er tilføjet et nyt internetpanel, der giver dig mulighed for hurtigt at skifte mellem forskellige udbydere og diagnosticere problemer.
    Frigivelse af den mobile platform Android 12
  • Tilføjet muligheden for at lave skærmbilleder, der ikke kun dækker det synlige område, men også indholdet i rulleområdet. Muligheden for at holde indhold uden for det synlige område fungerer for alle applikationer, der bruger View-klassen til output. For at implementere understøttelse af rulning af skærmbilleder i programmer, der bruger specifikke grænseflader, er ScrollCapture API blevet foreslået.
    Frigivelse af den mobile platform Android 12
  • Funktionen til automatisk rotation af skærmindhold er blevet forbedret, som nu kan bruge ansigtsgenkendelse fra frontkameraet til at bestemme, om skærmen skal drejes, for eksempel når en person bruger telefonen, mens han ligger ned. For at sikre fortrolighed behandles oplysninger i farten uden mellemlagring af billeder. Funktionen er i øjeblikket kun tilgængelig på Pixel 4 og nyere smartphones.
  • Forbedret billed-i-billede-tilstand (PIP, Picture in Picture) og øget glathed af overgangseffekter. Hvis du aktiverer automatisk overgang til PIP med en up-to-home gestus (skifter bunden af ​​skærmen op), skiftes applikationen nu straks til PIP-tilstand uden at vente på, at animationen er fuldført. Forbedret størrelsesændring af PIP-vinduer med ikke-videoindhold. Tilføjet muligheden for at skjule PIP-vinduet ved at trække det til venstre eller højre kant af skærmen. Funktionen ved berøring af et PIP-vindue er blevet ændret - et tryk viser nu kontrolknapperne, og et dobbelttryk ændrer vinduets størrelse.
  • Ydeevneoptimeringer:
    • Betydelig optimering af systemets ydeevne blev udført - belastningen på CPU'en af ​​de vigtigste systemtjenester faldt med 22%, hvilket igen førte til en stigning i batterilevetiden med 15%. Ved at reducere låsestridigheder, reducere latens og optimere I/O, øges ydeevnen ved overgangen fra en applikation til en anden, og applikationens opstartstid reduceres.

      I PackageManager, når du arbejder med snapshots i skrivebeskyttet tilstand, reduceres låsestrid med 92 %. Binders interproceskommunikationsmotor bruger letvægts caching for at reducere latenstiden med op til 47 gange for nogle typer opkald. Forbedret ydeevne til behandling af dex-, odex- og vdex-filer, hvilket resulterer i hurtigere app-indlæsningstider, især på enheder med lav hukommelse. Start af applikationer fra notifikationer er blevet fremskyndet, for eksempel er lanceringen af ​​Google Fotos fra en notifikation nu 34 % hurtigere.

      Ydeevnen af ​​databaseforespørgsler er blevet forbedret gennem brugen af ​​inline-optimeringer i CursorWindow-operationen. For små mængder data er CursorWindow blevet 36 % hurtigere, og for sæt på mere end 1000 rækker kan hastigheden være op til 49 gange.

      Der foreslås kriterier for klassificering af enheder efter ydeevne. Baseret på en enheds muligheder tildeles den en ydeevneklasse, som derefter kan bruges i applikationer til at begrænse funktionaliteten af ​​codecs på enheder med lavt strømforbrug eller til at håndtere multimedieindhold af højere kvalitet på kraftfuld hardware.

    • En applikationsdvaletilstand er blevet implementeret, som gør det muligt, hvis brugeren ikke eksplicit har interageret med programmet i lang tid, automatisk at nulstille tidligere tildelte tilladelser til applikationen, stoppe eksekvering, returnere ressourcer brugt af applikationen, såsom hukommelse, og blokere lanceringen af ​​baggrundsarbejde og afsendelsen af ​​push-meddelelser. Tilstanden kan bruges til de fleste applikationer og giver dig mulighed for at beskytte brugerdata, som længe glemte programmer fortsat har adgang til. Hvis det ønskes, kan dvaletilstand deaktiveres selektivt i indstillingerne.
    • Animationen ved drejning af skærmen er blevet optimeret, hvilket reducerer forsinkelsen før rotation med ca. 25 %.
    • Strukturen inkluderer en ny højtydende søgemaskine AppSearch, som giver dig mulighed for at indeksere oplysninger på enheden og udføre fuldtekstsøgninger med rangeringsresultater. AppSearch tilbyder to typer indekser - til at organisere søgninger i individuelle applikationer og til at søge i hele systemet.
    • Tilføjet Game Mode API og tilsvarende indstillinger, der giver dig mulighed for at administrere spillets præstationsprofil – for eksempel kan du ofre ydeevne for at forlænge batterilevetiden eller bruge alle tilgængelige ressourcer til at opnå maksimal FPS.
    • Tilføjet spil-som-du-download-funktion for at downloade spilressourcer i baggrunden under installationsprocessen, så du kan begynde at spille, før overførslen er fuldført. Ansøgning.
    • Øget reaktionsevne og reaktionshastighed, når du arbejder med notifikationer. For eksempel, når en bruger trykker på en notifikation, fører den nu straks til den tilknyttede app. Ansøgninger begrænser brugen af ​​anmeldelsestrampoliner.
    • Optimerede IPC-opkald i Binder. Ved at bruge en ny caching-strategi og eliminere låsekonflikt blev forsinkelsen betydeligt reduceret. Samlet set er Binder-opkaldsydelsen nogenlunde fordoblet, men der er nogle områder, hvor der er opnået endnu større hastigheder. For eksempel blev det at kalde refContentProvider() 47 gange hurtigere, releaseWakeLock() 15 gange hurtigere og JobScheduler.schedule() 7.9 gange hurtigere.
    • For at forhindre potentielle ydeevneproblemer er det forbudt for programmer at køre forgrundstjenester, mens de kører i baggrunden, undtagen i nogle få specielle tilfælde. For at starte arbejdet i baggrunden anbefales det at bruge WorkManager. For at forenkle overgangen er der foreslået en ny type arbejde i JobScheduler, som starter med det samme, har øget prioritet og netværksadgang.
  • Ændringer, der påvirker sikkerhed og privatliv:
    • Privacy Dashboard-grænsefladen er blevet implementeret med en generel oversigt over alle tilladelsesindstillinger, så du kan forstå, hvad brugerdataapplikationer har adgang til. Grænsefladen inkluderer også en tidslinje, der visualiserer historikken for app-adgang til mikrofon, kamera og placeringsdata. For hver applikation kan du se detaljer og årsager til at få adgang til følsomme data.
      Frigivelse af den mobile platform Android 12
    • Mikrofon- og kameraaktivitetsindikatorer er blevet tilføjet til panelet, som vises, når en applikation får adgang til kameraet eller mikrofonen. Når du klikker på indikatorerne, vises en dialog med indstillinger, som giver dig mulighed for at bestemme, hvilket program der arbejder med kameraet eller mikrofonen, og om nødvendigt tilbagekalde tilladelser.
    • Der er tilføjet kontakter til hurtigindstillinger-pop-up-blokken, hvormed du med kraft kan slukke for mikrofonen og kameraet. Efter slukning vil forsøg på at få adgang til kameraet og mikrofonen resultere i en meddelelse og tomme data sendes til applikationen.
      Frigivelse af den mobile platform Android 12
    • Tilføjet en ny meddelelse, der vises nederst på skærmen, når et program forsøger at læse indholdet af udklipsholderen via et kald til funktionen getPrimaryClip(). Hvis indhold fra udklipsholderen kopieres i det samme program, som det blev tilføjet til, vises meddelelsen ikke.
    • Tilføjet en separat tilladelse BLUETOOTH_SCAN til at scanne enheder i nærheden via Bluetooth. Tidligere blev denne funktion givet baseret på adgang til enhedens placeringsoplysninger, hvilket resulterede i behovet for at give yderligere tilladelser til applikationer, der kræver parring med en anden enhed via Bluetooth.
    • Dialogen for at give adgang til oplysninger om enhedens placering er blevet moderniseret. Brugeren får nu mulighed for at give applikationen information om den nøjagtige placering eller kun give omtrentlige data, samt begrænse autoriteten til kun den aktive session med programmet (afvise adgang i baggrunden). Nøjagtighedsniveauet af de data, der returneres ved valg af en omtrentlig placering, kan ændres i indstillingerne, herunder i forhold til individuelle applikationer.
      Frigivelse af den mobile platform Android 12
    • Applikationsudviklere får mulighed for at deaktivere pop op-advarsler, der overlapper indhold. Tidligere blev muligheden for at vise overlappende vinduer kontrolleret ved at kræve, at tilladelser skal verificeres under installationen af ​​programmer, der viser overlappende vinduer. Der var ingen tilgængelige værktøjer til at påvirke overlapningen af ​​indhold fra applikationer, hvis vinduer overlapper hinanden. Når du bruger Window#setHideOverlayWindows()-kaldet, vil alle overlappende vinduer nu automatisk blive skjult. For eksempel kan skjul være aktiveret, når der vises særligt vigtige oplysninger, såsom transaktionsbekræftelse.
    • Apps får yderligere indstillinger for at begrænse meddelelseshandlinger, mens skærmen er låst. Tidligere havde du kun mulighed for at kontrollere synligheden af ​​notifikationer, mens skærmen er låst, men nu kan du aktivere obligatorisk godkendelse for at udføre eventuelle handlinger med notifikationer, mens skærmen er låst. For eksempel kan en beskedapp kræve godkendelse før sletning eller markering af en besked som læst.
    • Tilføjet PackageManager.requestChecksums() API for at anmode om og verificere kontrolsummen for en installeret applikation. Understøttede algoritmer inkluderer SHA256, SHA512 og Merkle Root.
    • WebView-webmotoren implementerer muligheden for at bruge SameSite-attributten til at kontrollere cookie-behandling. Værdien "SameSite=Lax" begrænser den cookie, der sendes til underanmodninger på tværs af websteder, såsom anmodning om et billede eller indlæsning af indhold via en iframe fra et andet websted. I "SameSite=Strict"-tilstand sendes der ikke cookies til nogen form for anmodninger på tværs af websteder, inklusive alle indgående links fra eksterne websteder.
    • Vi fortsætter med at arbejde på at randomisere MAC-adresser for at eliminere muligheden for enhedssporing, når den er tilsluttet et trådløst netværk. Uprivilegerede applikationer har begrænset adgang til enhedens MAC-adresse, og kaldet getHardwareAddress() returnerer nu en nulværdi.
  • Ændringer og forbedringer på lavt niveau for applikationsudviklere:
    • Tilføjet muligheden for at tilpasse grænsefladeelementer til enheder med afrundede skærme. Udviklere kan nu få information om skærmafrundinger og justere grænsefladeelementer, der falder på usynlige hjørneområder. Gennem den nye RoundedCorner API kan du finde ud af parametre såsom radius og centrum af afrundingen, og gennem Display.getRoundedCorner() og WindowInsets.getRoundedCorner() kan du bestemme koordinaterne for hvert afrundet hjørne af skærmen.
      Frigivelse af den mobile platform Android 12
    • En ny CompanionDeviceService API er tilføjet, hvormed du kan aktivere applikationer, der styrer ledsagende enheder, såsom smartwatches og fitness-trackere. API'en løser problemet med at starte og forbinde de nødvendige applikationer, når en ledsagende enhed dukker op i nærheden. Systemet aktiverer tjenesten, når en enhed er i nærheden, og sender en notifikation, når enheden afbrydes, eller når enheden kommer ind i eller forlader scopet. Apps kan også bruge den nye ledsagende enhedsprofil til nemmere at konfigurere tilladelser til at deltage i en enhed.
    • Forbedret kapacitetsforudsigelsessystem. Applikationer kan nu anmode om information om den forudsagte samlede gennemstrømning i forhold til operatøren, specifikt trådløst netværk (Wi-Fi SSID), netværkstype og signalstyrke.
    • Anvendelsen af ​​almindelige visuelle effekter, såsom sløring og farveforvrængning, er blevet forenklet og kan nu anvendes ved hjælp af RenderEffect API til ethvert RenderNode-objekt eller hele det synlige område, inklusive i en kæde med andre effekter. Denne funktion giver dig for eksempel mulighed for at sløre et billede, der vises gennem ImageView uden eksplicit at kopiere, behandle og erstatte bitmap'et, og flytte disse handlinger til platformssiden. Derudover foreslås Window.setBackgroundBlurRadius() API'et, hvormed du kan sløre baggrunden af ​​et vindue med en matteret glaseffekt og fremhæve dybde ved at sløre rummet omkring vinduet.
      Frigivelse af den mobile platform Android 12
    • Integrerede værktøjer til omkodning af mediestrømme, der kan bruges i miljøer med en kameraapplikation, der gemmer video i HEVC-formatet, for at sikre kompatibilitet med applikationer, der ikke understøtter dette format. Til sådanne applikationer er der tilføjet en automatisk omkodningsfunktion til det mere almindelige AVC-format.
    • Tilføjet understøttelse af billedformatet AVIF (AV1 Image Format), som bruger intra-frame-komprimeringsteknologier fra AV1-videokodningsformatet. Beholderen til distribution af komprimerede data i AVIF ligner fuldstændig HEIF. AVIF understøtter både billeder i HDR (High Dynamic Range) og Wide-gamut farverum samt i standard dynamic range (SDR).
    • En samlet OnReceiveContentListener API foreslås til indsættelse og flytning af udvidede typer indhold (formateret tekst, billeder, videoer, lydfiler osv.) mellem applikationer, der bruger forskellige datakilder, herunder klippebordet, tastaturet og træk&slip-grænsefladen.
    • En taktil feedback-effekt, implementeret ved hjælp af vibrationsmotoren indbygget i telefoner, er blevet tilføjet, hvor frekvensen og intensiteten af ​​vibration afhænger af parametrene for den aktuelle udgangslyd. Den nye effekt giver dig mulighed for fysisk at mærke lyden og kan bruges til at tilføje ekstra realisme til spil og lydprogrammer.
    • I Immersive-tilstand, hvor programmet vises i fuld skærm med skjulte servicepaneler, forenkles navigationen ved hjælp af kontrolbevægelser. For eksempel kan bøger, videoer og billeder nu navigeres med en enkelt strygebevægelse.
    • Som en del af Mainline-projektet, der giver dig mulighed for at opdatere individuelle systemkomponenter uden at opdatere hele platformen, er der udarbejdet nye opdaterbare systemmoduler udover de 22 moduler, der er tilgængelige i Android 11. Opdateringerne påvirker ikke-hardware-komponenter, der downloades via Google Play adskilt fra OTA-firmwareopdateringer fra producenten. Blandt de nye moduler, der kan opdateres via Google Play uden at opdatere firmwaren, er ART (Android Runtime) og et modul til videotranskodning.
    • En API er blevet tilføjet til WindowInsets-klassen for at bestemme visningspositionen af ​​kamera- og mikrofonbrugsindikatorer (indikatorer kan overlappe kontroller i programmer, der er implementeret til fuld skærm, og via den specificerede API kan applikationen justere sin grænseflade).
    • For centralt administrerede enheder er der tilføjet en mulighed for at forhindre brugen af ​​kontakter til at slå mikrofonen og kameraet fra.
    • For CDM (Companion Device Manager)-applikationer, der kører i baggrunden, og som styrer ledsagende enheder såsom smartwatches og fitness-trackere, er det muligt at starte forgrundstjenester.
    • I stedet for en udgave til bærbare enheder besluttede Android Wear sammen med Samsung at udvikle en ny samlet platform, der kombinerer Androids og Tizens muligheder.
    • Mulighederne for Android-udgaver til bilinfotainmentsystemer og smart-tv er blevet udvidet.

    Kilde: opennet.ru

  • Tilføj en kommentar