Android 12 er her med sin første forhåndsvisning for utviklere og mange endringer for utviklere

click fraud protection

Android 12 Developer Preview 1 er her, og bringer med seg massevis av endringer som apputviklere kan passe på og tilpasse appene sine til. Les videre!

Android-operativsystemet har eksistert i mange år nå, og det har blitt det dominerende operativsystemet for mobile enheter. Mens Android som plattform definitivt har modnet gjennom årene, er det alltid rom for forbedringer. Og forbedre det vil, ettersom Google nå slipper den første versjonen av sin neste oppgradering, Android 12. Android 12 Developer Preview 1 er her, og den bringer med seg endringer som gjør Android mer intuitivt, gir bedre ytelse og sikrere.

Før vi går videre, her er noe som må gjentas: Denne utviklerforhåndsvisningen, som navnet tilsier, er ment kun for utviklere slik at de kan prøve ut det kommende operativsystemet og teste appene deres for å tilpasse seg endringene som er introdusert. Det betyr at dette er en veldig grov OS-utgivelse, slik det er ment, men Google vil polere den med tilbakemeldinger fra utviklere i løpet av de neste månedene. Hvis du er en gjennomsnittlig bruker, kommer Android 12-oppdateringen for deg ikke før andre halvdel av året. Inntil da anbefaler vi at du holder deg unna å flashe buildene på telefonen din og bare leser dekningen vår for å holde deg oppdatert på alle endringene som kommer til Android!

Android 12 bygges med leietakerne av personvern, bedre brukeropplevelse og bedre ytelse, med Developer Preview 1 som introduserer:

  • Tillit og sikkerhet
    • Moderne SameSite-informasjonskapselatferd i WebView
    • Begrenset Netlink MAC
    • Tryggere eksport av komponenter
    • Tryggere håndtering av intensjoner
  • Bedre verktøy for brukeropplevelse
    • Kompatibel medieomkoding
    • AVIF-bildestøtte
    • Forgrunnstjenesteoptimaliseringer
    • Innsetting av rikt innhold
    • Haptisk-koblet lydeffekt
    • Flerkanals lyd
    • Oppslukende modusforbedringer for navigering med bevegelser
    • Oppdateringer av varslingsgrensesnitt
    • Raskere og mer responsive varsler
    • Forbedrede Binder IPC-anrop
  • App-kompatibilitet
    • Project Mainline / Google Play Systemoppdateringer: ART og mer
    • Optimaliserer for nettbrett, sammenleggbare, TV-er
    • Oppdaterte lister over ikke-SDK-grensesnitt
    • Enklere testing og feilsøking av endringer
    • Milepæl for plattformstabilitet
  • Hvordan laste ned og Hvordan installere Android 12 Forhåndsvisning av utvikler 1

Google håper å gi brukerne mer åpenhet og kontroll samtidig som de holder Android-enheter sikre. Android 12 bringer med seg nye kontroller over identifikatorer som kan brukes til sporing, sikrere standardinnstillinger for appkomponenter og mer.

Moderne SameSite-informasjonskapselatferd i WebView

WebView blir oppdatert for å bringe den i tråd med endringer i Google Chrome og andre nettlesere, med hensyn til SameSite-informasjonskapselatferd. Dette vil gi ekstra sikkerhet og personvern, og gi brukerne mer åpenhet og kontroll over hvordan informasjonskapsler kan brukes på tvers av nettsteder.

Google vil at utviklere skal migrere til personvernbeskyttende identifikatorer som kan tilbakestilles. For det formål har den tatt i bruk en multi-release innsats for å lette migreringen av enhetsomfanget Netlink MAC. Android 11 begrenset tilgang til enhetsomfanget Netlink MAC til API-nivå 30, og i Android 12 brukes begrensningen for alle apper, uavhengig av målSDK-nivå.

Tryggere eksport av komponenter

Apper på tidligere Android-utgivelser kan utilsiktet eksportere aktiviteter, tjenester og mottakere. Google endrer standardhåndteringen av android; eksportert attributtet for å være mer eksplisitt i Android 12. Med Android 12 må komponenter som erklærer ett eller flere intensjonsfiltre nå eksplisitt deklarere en android; eksportert Egenskap. Google anbefaler utviklere å inspisere komponentene deres i manifestet for å unngå installasjonsfeil knyttet til endringen.

Tryggere håndtering av intensjoner

Android 12 krever at apper eksplisitt erklærer et mutabilitetsflagg FLAG_MUTABLE eller det nye FLAG_IMMUTABLE, for hver PendingIntent. Dette bør gjøre håndteringen av PendingIntents sikrere.


Ingen oppdatering er komplett uten litt mer polering mot brukeropplevelsen, og Android 12 er ikke annerledes.

De fleste mobile enheter i disse dager kommer med H.265 / HEVC-maskinvarekoding, slik at kameraapper kan fangst i HEVC-formatet da det gir betydelige forbedringer i kvalitet og komprimering i forhold til eldre kodeker. De fleste apper støtter HEVC, men det er fortsatt noen få som ikke støtter det. For disse appene introduserer Google kompatibel medietranskoding med Android 12.

Med denne funksjonen kan en app som ikke støtter HEVC få plattformen til automatisk å omkode filen til H.264 / AVC, et format som ser mye bredere kompatibilitet. Som man kunne forvente, vil transkodingsprosessen ta litt tid avhengig av videoen og maskinvareegenskapene til smarttelefonen. Google gir eksemplet med Pixel 4 (Snapdragon 855) som tar rundt 9 sekunder å omkode en 1-minutters 1080p 30fps-video.

Utviklere kan velge å bruke transkodingstjenesten ved ganske enkelt å erklære medieformatene som appen deres ikke støtter. Google anbefaler på det sterkeste at apper støtter HEVC i utgangspunktet, men hvis det ikke er mulig, bør utvikleren aktivere kompatibel medieomkoding. Funksjonen vil være aktiv på alle enheter som bruker HEVC-format for videoopptak.

AVIF bildestøtte

Android 12 introduserer plattformstøtte for AV1 Image File Format, noe som gir høyere bildekvalitet med mer effektiv komprimering. AVIF er et beholderformat for bilder og sekvenser av bilder kodet ved hjelp av AV1. AVIF drar fordel av det intra-frame-kodede innholdet fra videokomprimering, og forbedrer bildekvaliteten dramatisk for samme filstørrelse sammenlignet med eldre bildeformater som JPEG.

Til venstre: AVIF (18,2kB). Høyre: JPEG (20,7 kB). Kreditt: Bildesammenligning fra AVIF har landet av Jake Archibald

Optimalisering av forgrunnstjenester

En forgrunnstjeneste er en tjeneste som utfører en operasjon som er merkbar for brukeren, som en lydapp som spiller et lydspor og dermed bruker en forgrunnstjeneste. Disse tjenestene er en viktig måte for apper å administrere visse typer brukervendte oppgaver. Men når de blir overbrukt, kan det påvirke ytelsen og til og med føre til app-drap.

Med henvisning til forbedringer av brukeropplevelsen vil Google blokkere forgrunnstjenestestarter fra bakgrunnen for apper som retter seg mot den nye plattformen. Og for å gjøre det lettere for utviklere å gå bort fra dette startmønsteret, introduserer Android 12 en ny fremskyndet jobb i JobScheduler som får forhøyet prosessprioritet, nettverkstilgang og kjører umiddelbart uavhengig av strømbegrensninger som batteri Saver eller Doze. For tilbakekompatibilitet har Google også bygget inn fremskyndede jobber i den siste utgaven av Jetpack WorkManager-biblioteket. Videre forsinker Google også visningen av noen forgrunnstjenestevarsler med opptil 10 sekunder. Dette gir kortvarige oppgaver en sjanse til å fullføre før varslene deres vises, noe som reduserer distraksjon for brukere.

Innsetting av rikt innhold

Vi har lenge passert punktet der kommunikasjonen vår på telefoner kun var avhengig av enkel tale og tekst. Det meste av kommunikasjonen i disse dager er ufullstendig uten medfølgende bilder (les: memes), videoer og annet uttrykksfullt innhold (les: reaksjons-gifs). Det er imidlertid ikke lett å sette inn og flytte disse rike innholdstypene i og på tvers av apper.

For å gjøre det enklere for apper å motta rikt innhold, introduserer Google en ny enhetlig API som lar dem godta innhold fra alle kilder: utklippstavle, tastatur eller dra og slipp. Utviklere kan legge ved et nytt grensesnitt kalt OnReceiveContentListener til UI-komponenter og få tilbakeringing når innhold settes inn via en hvilken som helst mekanisme. Denne tilbakeringingen blir følgelig det eneste stedet for appkoden for å håndtere innsettingen av alle typer innhold, enten det er ren tekst, stilisert tekst, markering, bilder, video eller lydfiler, og bortenfor.

For tilbakekompatibilitet har Google lagt til det enhetlige API-et til Androidx.

Haptisk-koblet lydeffekt

I Android 12 kan apper gi lydkoblet haptisk tilbakemelding gjennom telefonens vibrator. Videre er vibrasjonsstyrken og frekvensen utledet fra en lydøkt, slik at utviklere kan skape en mer oppslukende spill- og lydopplevelse. For eksempel kan ringeapper kanskje bruke tilpassede ringetoner for å identifisere innringere gjennom haptiske tilbakemeldinger, og spill kan simulere røft terreng i et racingspill. Det er ganske få muligheter å utforske her.

Flerkanals lyd

Android 12 inkluderer flere forbedringer for lyd med romlig informasjon. Det legger til støtte for MPEG-H avspilling i passthrough og offload-modus. Lydmikserne, resamplerne og effektene er optimalisert for opptil 24 kanaler (det forrige maksimum var 8 på Android 11).

Oppslukende modusforbedringer for navigering med bevegelser

Android 12 bringer med seg en endring som høres veldig viktig ut på overflaten. I fullskjerm eller oppslukende appopplevelser vil Android 12 tillate brukere å navigere på telefonene sine med ett sveip som standard. OS vil fortsatt beskytte apper mot utilsiktede bevegelser i disse fullskjermopplevelsene. Vi vil legge hendene på utviklerforhåndsvisningen for å finne ut nøyaktig hva som har endret seg, siden ordlyden ikke gir fullstendig rett til endringen.

Oppdateringer av varslingsgrensesnitt

Som du kanskje allerede har sett i lekket Android 12-skjermbilder, vil varslinger få litt rehabilitering for å gjøre dem mer moderne, enklere å bruke og mer funksjonelle. Google nevner at det er endringer fra skuffen og kontroller til selve malene. Overganger og animasjoner blir også optimalisert for å gjøre dem jevnere. Apper som er målrettet mot Android 12 vil også ha tilgang til varsler med tilpasset innhold med ikon og andre endringer som samsvarer med alle andre varsler. Vi skal se nærmere på endringene i vår hands-on.

Raskere og mer responsive varsler

Varsler skal tilby en klar og rask vei for å nå en bestemt del i en app. Av den grunn må utviklere sørge for at varslingstrykk utløser aktiviteten starter direkte, i stedet for å bruke en mellomliggende kringkastingsmottaker eller tjeneste for å starte aktiviteten (en tilnærming som Google refererer til som varsling trampoline). Varslingstrampoliner kan forårsake betydelige forsinkelser og påvirke brukeropplevelsen, og så også Android 12 vil blokkere disse varslingstrampolinene ved å hindre dem i å skyte ut målet Aktiviteter. Google ber utviklere om å migrere bort fra en slik praksis. Denne endringen gjelder bare apper som er rettet mot den nye plattformen, men for alle apper vil Google vise en skål for å gjøre trampoliner synlige for utvikleren og for brukerne.

Forbedrede Binder IPC-anrop

Google har fokusert på å redusere systemvariabiliteten ved å gjøre optimaliseringer av ventetid og arbeidsbelastningsfordeling som reduserer medianopplevelsen for brukstilfeller på 99 %. Dette har resultert i forbedringer av systembinderanrop, lagt til lette bufringsstrategier og fokus på å fjerne låsestridigheter for å forbedre latensdistribusjonen. Google hevder at dette har gitt omtrent 2 ganger ytelsesøkning på Binder-anrop totalt sett, med betydelige forbedringer i spesifikke anrop som f.eks. refContentProvider() (47x forbedring), releaseWakeLock() (15x forbedring), og JobScheduler.schedule() (7,9x forbedring).


Appkompatibilitet i Android 12

I denne delen snakker Google om å gjøre oppdateringer raskere og smidigere for både utviklere og brukere. App-vendte endringer blir gjort opt-in for å gi utviklere mer tid til å tilpasse seg den nye plattformen.

Project Mainline / Google Play Systemoppdateringer: ART og mer

Som vi fant ut selve fjoråret, Google overfører ART til en Project Mainline-modul. Dette vil tillate Google å forbedre kjøretidsytelsen og korrektheten, administrere minnekjernen mer effektivt og gjøre Kotlin-operasjoner raskere – alt uten å kreve en fullstendig systemoppdatering.

Noen av funksjonene som er nevnt i denne nyhetsartikkelen, leveres også gjennom Project Mainline. For eksempel blir den sømløse transkodingsfunksjonen levert gjennom en oppdaterbar modul, noe som indikerer at dette meget vel kan være fremtiden for Android.

Optimaliserer for nettbrett, sammenleggbare og TV-er

Google slipper også den første forhåndsvisningen av Android 12 for Android TV. Med dette får du ikke bare de nyeste Android-funksjonene på TV-en, men får også teste mot det nye Google TV erfaring.

Oppdaterte lister over ikke-SDK-grensesnitt

Med denne utgivelsen har Google begrenset ekstra ikke-SDK-grensesnitt.

Enklere testing og feilsøking av endringer

Introdusert med Android 11, tillater Google enklere testing og feilsøking av endringer gjennom opt-in veksler for endringer presentert individuelt fra utvikleralternativer eller gjennom ADB.

Milepæl for plattformstabilitet

Akkurat som i fjor planlegger Google å nå Platform Stability-milepælen for denne utgivelsen, for å la utviklere få konkrete kunnskap om de endelige SDK/NDK APIene og alle de endelige interne APIene og app-vendte systematferdene som de trenger for å forberede sine app for. Google forventer å nå Android 12 Platform Stability innen august 2021.


Last ned og installer Android 12 Developer Preview 1

Du kan enkelt last ned den nyeste Android 12 Developer Preview fra lenkene i vår dedikerte artikkel, som også skal oppdateres med nedlastingslenker for fremtidige utgivelser.

Google slipper offisielt denne forhåndsvisningsoppdateringen for utviklere for:

  • Pixel 5
  • Pixel 4a 5G
  • Pixel 4a
  • Pixel 4
  • Pixel 4 XL
  • Pixel 3a
  • Pixel 3a XL
  • Pixel 3
  • Pixel 3 XL

Videre har vi installasjonsinstruksjoner tilgjengelig for Android 12 Developer Preview 1 for vanlige installasjonsruter som Recovery, ADB og Fastboot for de nevnte Pixel-enhetene, og gjennom en GSI for alle andre Project Treble-kompatible enheter.