Android 11-utviklerforhåndsvisning

Google lanserte Android 11 Developer Preview 1 i dag. Her er alle de nye plattformfunksjonene og atferdsendringene som utviklere trenger å vite.

I dag, Google annonsert den første Android 11 Developer Preview i et offisielt blogginnlegg. Selskapet har allerede gitt ut systembilder for enhver utviklere som er interessert i å installere det nye Android OS. Vi anbefaler at du installerer den så snart som mulig for å teste appen din mot de siste atferdsendringene og plattformfunksjonene i Android 11. Før du dykker ned i dokumentene, her er et sammendrag av alle de store nye utviklerfokuserte funksjonene i den første Android 11 Developer Preview.

Nye nettverks-/tilkoblingsfunksjoner

5G-tilkobling kommer til å være på topp i år og neste år: Samsung gjør 5G-aktiverte smarttelefoner allment tilgjengelige med Galaxy S20-serien samtidig som Qualcomm fortsetter å heve listen på 5G smarttelefontilkobling. Med Android 11 legger Google til to nye API-er for å forberede utviklere på virkeligheten av 5G-tilkobling. Ikke bare disse, men andre tilkoblingsbaserte API-er får også litt polering.

Bandwidth Estimator API

Google er oppdaterer ConnectivityManager for å gjøre det enklere å sjekke nedstrøms og oppstrøms båndbredde uten å måtte spørre nettverket eller trenger utviklere for å beregne sine egne estimater. Hvis modemet ikke støtter å levere disse dataene, vil API-en gjøre et standardestimat basert på den eksisterende nettverkstilkoblingen.

Dynamic Meteredness API

Denne API-en lar utviklere sjekke om brukeren er på en umålt tilkobling, og i så fall tilby en høyere oppløsning eller kvalitetsmedier som potensielt kan bruke mye mer data. Med Android 11 har denne API-en blitt utvidet til å omfatte mobilnettverk, slik at utviklere nå kan identifisere brukere hvis operatører tilbyr virkelig umålte datatjenester på 5G-nettverket deres.

Forbedringer i tjenesten for samtalescreening

Google introduserte konseptet "roller" i Android 10. De ligner litt på "standardapper" ved at det å gi en rolle en rolle lar den ha tilgang til visse APIer. For eksempel er det en ringe screening rolle som lar en tredjepartsapp blokkere eller identifisere innkommende anrop før brukeren blir gjort oppmerksom på dem. I Android 11 kan apper for samtalescreening nå få innkommende anrop RØR/RISTET bekreftelsesstatus som en del av samtaledetaljene. De kan deretter tilpasse en systemlevert skjerm etter anrop for å la brukere utføre handlinger som å merke en samtale som søppelpost eller legge den som ringer til kontakter. Dette vil hjelpe apper for samtalescreening med å gjøre mer for brukeren ved å strømlinjeforme reaksjoner etter en ukjent oppringer.

API-forbedringer for Wi-Fi-forslag

De Wi-Fi forslag API vil nå gi apper for tilkoblingsadministrasjon større mulighet til å administrere sine egne nettverk. For eksempel vil apper for tilkoblingsadministrasjon nå kunne tvinge en frakobling ved å fjerne et nettverk forslag, administrere Passpoint-nettverk, motta mer informasjon om kvaliteten på tilkoblede nettverk, og mer.

Passpunktforbedringer

Wi-Fi Passpoint er ifølge Wi-Fi Alliance en løsning som effektiviserer nettverkstilgang til Wi-Fi-hotspots ved å aktiverer automatisk nettverksoppdagelse og valg, forenkler registrering på nett og sømløst aktivering av hotspot roaming. Android 11 vil tillate håndhevelse og varsling om utløpsdatoen for en Passpoint-profil, samt støtte Common Name-spesifikasjon i profilen og tillate selvsignerte CA-er for Passpoint R1-profiler. Og som nevnt ovenfor, vil API-en for Wi-Fi-forslag også tillate tilkoblingsapper å administrere Passpoint-nettverk.

Nye UI/UX-funksjoner

UI-støtte for hull- og fosseskjermer

OEM-er for Android-smarttelefoner leder innovasjon på maskinvareområdet, og en av de mest bemerkelsesverdige maskinvareendringene vi har sett i nyere tid er introduksjonen av skjermutskjæringer. Samsung Galaxy S20-serien har for eksempel enkeltsentrerte hullhullsskjermer. Hullhullsskjermer, eller pinhole-skjermer som Google refererer til dem, er skjermer som har et kamera omgitt av skjermpiksler på hele kanten—nesten som om noen brukte en hullmaskin på vise. En annen skjerminnovasjon er fossefallskjermen: skjermer som har en mye mer uttalt skjermkurve på sidekantene, som flyter over til sidene av enheten.

Til venstre: Samsung Galaxy S20+ med en enkelt sentrert hullhullsskjerm. Til høyre: Huawei Mate 30 Pro og Vivo Nex 3 5G med buede "fossefall"-skjermer.

Android 11 utvider nå støtten til hullstanseskjermer og fossefallskjermer gjennom display cutout API. Hvis utviklere vil, vil API-en også tillate dem å bygge apper som kan bruke hele fossefallskjermen inkludert kantene, med innfelt for å hjelpe med å administrere interaksjoner nær kantene.

Dedikert samtaleseksjon i varsler

Mange av oss mottar massevis av varsler på en dag, men ikke alle varsler er like viktige. Generelt har varsler fra meldingsapper en tendens til å være viktigere enn andre app-opprinnelige varsler. For det formål introduserer Android 11 en dedikert samtaleseksjon i varslingsskjermen. Dette vil tillate brukere å enkelt finne sine pågående samtaler med folk i favorittappene deres, og hjelpe utviklere med å skape dypere samtaleopplevelser.

Bubbles API

I fjor hadde vi påpekt hvordan Bubbles API introdusert i Android 10 vil erstatte overleggs-APIet i en fremtidig Android-versjon. Med Android 11 presser Google utviklere av meldings- og chat-apper til å gjøre overgangen til Bubbles for å holde samtaler synlige og tilgjengelige når en bruker multitasker på telefonen.

Bildeinnsetting i varslingssvar

Android 11 vil nå tillate apper som støtter kopiering/liming av bilder å la brukerne sette inn disse bildene direkte i det innebygde svaret i varsling, noe som betyr at brukere kan trykke lenge og ha alternativet Lim inn kontekstmeny tilgjengelig for dem når de svarer på et varsel fra varselskygge. Google Chrome jobbet allerede mot støtte for kopiering av bilder direkte til Androids utklippstavle, og Gboard forberedte seg på å tillate brukere lim inn bilder direkte i sosiale medier og meldingsapper. Google nevner nå at disse funksjonene vil være tilgjengelige på Android 11 Developer Preview 1.

Bilde- og kameraforbedringer

HEIF Animerte Drawables

ImageDecoder API vil nå la utviklere dekode og gjengi bildesekvensanimasjoner som er lagret i HEIF (høyeffektivt bildeformat) filer. Dette vil tillate utviklere å bruke høykvalitets eiendeler og samtidig minimere innvirkningen på nettverksdata og APK-størrelse. HEIF bildesekvenser tilbyr drastiske reduksjoner i filstørrelse sammenlignet med GIF-er, så HEIF er i en god posisjon til å være et bedre alternativ i mobilbaserte brukssaker. Utviklere vil kunne vise HEIF-bildesekvenser i appene sine ved å kalle decodeDrawable med en HEIF-kilde. Hvis kilden inneholder en sekvens med bilder, returneres en AnimatedImageDrawable.

Innebygd bildedekoder

Android 11 introduserer nye NDK APIer som lar apper dekode og kode bilder fra opprinnelig kode for grafikk eller etterbehandling mens du beholder en mindre APK-størrelse da det ikke er nødvendig å pakke en ekstern bibliotek. Den native dekoderen drar også nytte av Androids prosess for pågående plattformsikkerhetsoppdateringer.

Demping under kameraopptak

Nye API-er lar apper dempe vibrasjon fra ringetoner, alarmer og varsler når en kameraopptaksøkt er aktiv, som disse vibrasjonene kan ha en tendens til å introdusere risting i opptaket, som kan forsterkes ytterligere hvis brukeren zoomer i.

Bokeh-moduser

Apper kan nå bruke metadata-tagger for å aktivere bokeh-modus på forespørsler om kameraopptak på enheter som støtter det.

Videodekoding med lav latens

Apper kan nå bruke nye APIer til Sjekk og konfigurer avspilling med lav latens for en bestemt kodek.

Video med lav ventetid er kritisk for apper og tjenester for sanntidsvideostrømming som Stadia. Videokodeker som støtter avspilling med lav ventetid returnerer det første bildet av strømmen så raskt som mulig etter at dekodingen begynner.

HDMI-modus med lav latens

Nye API-er lar nå apper se etter og be om automatisk lav latensmodus (også kjent som spillmodus). eksterne skjermer og TV-er. I denne modusen deaktiverer skjermen eller TV-en etterbehandling av grafikk for å minimere ventetid.

Diverse Nye og oppdaterte APIer

Neural Networks API 1.3

Neural Networks API (NNAPI) er designet for å kjøre beregningsintensive operasjoner for maskinlæring på Android-enheter. Med Android 11 utvider Google operasjonene og kontrollene som er tilgjengelige for utviklere under denne APIen:

  • Quality of Service APIer støtter prioritet og tidsavbrudd for modellkjøring.
  • Memory Domain APIer reduserer minnekopiering og transformasjon for fortløpende modellkjøring.
  • Utvidet kvantiseringsstøtte gjennom signert heltalls asymmetrisk kvantisering der fortegnede heltall brukes i stedet for flyttall for å muliggjøre mindre modeller og raskere inferens.

App-kompatibilitet

Nye plattformoppdateringer kan gi potensielle appkompatibilitetsproblemer for apputviklere, så Google jobber også med å prioritere appkompatibilitet. Med Android 11 legger Google til nye prosesser, utviklerverktøy og utgivelsesmilepæler som tar sikte på å minimere virkningen av plattformoppdateringer og dermed minimere kompatibilitetsproblemer.

  • Minimere virkningen av atferdsendringer: Google har gjort en bevisst innsats for å minimere atferdsendringer som kan påvirke apper. Alle slike endringer har blitt nøye gjennomgått sammen med deres innvirkning, og det er forsøkt gjort få så mange av dem som mulig til å velge inntil utviklerne setter appens targetSdkVersion til Android 11. Det er ennå ikke mulig å publisere applikasjoner rettet mot API-nivå 30 ennå, men Google vil aktivere muligheten til å gjøre det i en fremtidig Android 11 Developer Preview.
  • Enklere testing og feilsøking: I tråd med det vi hadde rapportert forrige måned, kommer den første Android 11 Developer Preview med en «App-kompatibilitet»-utvikleralternativ for å hjelpe utviklere med å teste nye plattformendringer. Mange brytende endringer introdusert i Android 11 Developer Preview har blitt gjort kan slås av – lar utviklere tvingeaktivere eller deaktivere endringene individuelt fra utvikleralternativer eller gjennom ADB. Dette bør bidra til å lindre smerter ved testing for appkompatibilitet, siden utviklere ikke trenger å kompilere appen på nytt for grunnleggende testing eller endre targetSdkVersion.
  • Oppdaterte grålister: Google har oppdatert listen over begrensede ikke-SDK-grensesnitt. Android 11 Developer Preview-utgivelsen har også fjernet meta-refleksjonsløsningen som noen utviklere brukte.
  • Dynamisk ressurslaster: Utviklere hadde bedt om en offentlig API for å laste ressurser og eiendeler dynamisk under kjøring, og i Android 11 har Google lagt til et Resource Loader-rammeverk.
  • Ny milepæl for plattformstabilitet: Å forberede apper for tidlig kompatibilitet var en utfordring for utviklere under Developer Preview/Beta-fasen da det ikke var noen klare datoer for endelige endringer i plattformen for det versjon. Dermed, med Android 11, legger Google til en ny utgivelsesmilepæl kalt "Platform Stability", som Google forventer å nå i begynnelsen av juni. Denne milepælutgivelsen vil ikke bare inkludere de endelige SDK- og NDK-API-ene, men den vil også inkludere endelige interne API-er og annen systematferd som kan påvirke apper. Mer informasjon om utgivelsestidslinjen er tilgjengelig på Googles utviklerside.

Hvis du vil teste ut den nye Android 11 Developer Preview, kan du flashe et forhåndsbygd systembilde på en Pixel 2, Pixel 2 XL, Pixel 3, Pixel 3 XL, Pixel 3a, Pixel 3a XL, Pixel 4 eller Pixel 4 XL. Alternativt kan du flashe et forhåndsbygd, Google-signert generisk systembilde (GSI) på en hvilken som helst Project Treble-støttet enhet med en ulåst oppstartslaster. Hvis du ikke har en av de støttede Pixel-telefonene eller en enhet som støtter Project Treble med en ulåst bootloader, så kan du laste ned det nyeste systembildet for emulatoren i Android Studio. Android-emulatoren som kjører Android 11-systembildet har eksperimentell støtte for å kjøre ARM 32 og 64-bits binær kode på 64-biters x86-systembilder.

I tillegg til å sette opp Android Emulator, kan du også laste ned Android 11 Developer Preview SDK og NDK i Android Studio. Google anbefaler at du oppdaterer Android Studio til siste Canary-utgivelse for å dra nytte av IDEs nyeste funksjoner. Når du er ferdig, kan du utforske de nyeste plattformfunksjonene og atferdsendringene i Android 11 Developer Preview ved å sjekke API-oversikten, API-referansen og API-diff-rapporten. Hvis du har noen tilbakemeldinger å gi, kan du gi Google beskjed via en av deres offisielle kanaler. Hvis du finner en feil i utviklerforhåndsvisningen, kan du sende inn en rapport på Google Issue Tracker. Til slutt, sørg for å følge nyhetskoden vår for de siste oppdateringene på Android 11 – det er mange plattformfunksjoner og atferdsendringer som vi finner at Google ikke dokumenterer!

Android 11 Nyheter på XDA