Google släppte Android 11 Developer Preview 1 idag. Här är alla nya plattformsfunktioner och beteendeförändringar som utvecklare behöver känna till.
Idag, Google meddelat den första Android 11 Developer Preview i ett officiellt blogginlägg. Företaget har redan släppt systembilder för alla utvecklare som är intresserade av att installera det nya Android OS. Vi rekommenderar att du installerar den så snart som möjligt för att testa din app mot de senaste beteendeförändringarna och plattformsfunktionerna i Android 11. Innan du dyker in i dokumenten, här är en sammanfattning av alla viktiga nya utvecklarfokuserade funktioner i den första Android 11 Developer Preview.
Nya nätverks-/anslutningsfunktioner
5G-anslutning kommer att vara på modet i år och nästa: Samsung gör 5G-aktiverade smartphones allmänt tillgängliga med Galaxy S20-serien medan Qualcomm fortsätter att höja ribban på 5G smartphone-anslutning. Med Android 11 lägger Google till två nya API: er för att förbereda utvecklare för verkligheten med 5G-anslutning. Inte bara dessa, utan även andra anslutningsbaserade API: er håller på att bli lite polare.
Bandwidth Estimator API
Google är uppdatera ConnectivityManager för att göra det lättare att kontrollera nedströms och uppströms bandbredd utan att behöva polla nätverket eller behöva utvecklare för att beräkna sina egna uppskattningar. Om modemet inte stöder tillhandahållande av dessa data kommer API: et att göra en standarduppskattning baserat på den befintliga nätverksanslutningen.
Dynamic Meteredness API
Detta API tillåter utvecklare att kontrollera om användaren har en obegränsad anslutning, och i så fall erbjuda en högre upplösning eller kvalitetsmedia som potentiellt kan använda mycket mer data. Med Android 11 har detta API utökats till att omfatta mobilnät, så att utvecklare nu kan identifiera användare vars operatörer erbjuder verkligt obegränsade datatjänster på deras 5G-nätverk.
Förbättringar av samtalsscreeningstjänster
Google introducerade konceptet "roller" i Android 10. De påminner lite om "standardappar" genom att beviljande av en roll till en app ger den tillgång till vissa API: er. Till exempel finns det en samtalsscreeningsroll som gör att en tredjepartsapp kan blockera eller identifiera inkommande samtal innan användaren blir medveten om dem. I Android 11 kan appar för samtalsscreening nu ta emot inkommande samtal RÖRA/SKAKA verifieringsstatus som en del av samtalsinformationen. De kan sedan anpassa en systemtillhandahållen skärm efter samtalet för att låta användare utföra åtgärder som att markera ett samtal som skräppost eller lägga till den som ringer till kontakter. Detta kommer att hjälpa appar för samtalsscreening att göra mer för användaren genom att effektivisera reaktioner efter en okänd uppringare.
Wi-Fi-förslag API-förbättringar
De Wi-Fi förslag API kommer nu att tillåta anslutningshanteringsappar större förmåga att hantera sina egna nätverk. Till exempel kommer appar för anslutningshantering nu att kunna tvinga fram en frånkoppling genom att ta bort ett nätverk förslag, hantera Passpoint-nätverk, få mer information om kvaliteten på anslutna nätverk och Mer.
Förbättringar av passpoint
Wi-Fi Passpoint, enligt Wi-Fi Alliance, är en lösning som effektiviserar nätverksåtkomst till Wi-Fi-hotspots genom att möjliggör automatisk upptäckt och val av nätverk, förenklar onlineregistrering och sömlöst aktivera hotspot roaming. Android 11 kommer att möjliggöra verkställighet och meddelande om utgångsdatum för en Passpoint-profil, samt stödja Common Name-specifikation i profilen och tillåta självsignerade CA: er för Passpoint R1-profiler. Och som nämnts ovan kommer Wi-Fi suggestion API också att tillåta anslutningsappar att hantera Passpoint-nätverk.
Nya UI/UX-funktioner
UI-stöd för hålslagnings- och vattenfallsskärmar
OEM-tillverkare av Android-smarttelefoner leder innovation inom hårdvaruområdet, och en av de mest anmärkningsvärda hårdvaruförändringarna vi har sett på senare tid är introduktionen av displayutskärningar. Samsung Galaxy S20-serien har till exempel enkelcentrerade hålhålsskärmar. Hålhålsskärmar, eller nålhålsskärmar som Google hänvisar till dem, är skärmar som har en kamera omgiven av bildpixlar på hela kanten - nästan som om någon använde en hålslagare på skärmen visa. En annan skärmnyhet är vattenfallsskärmen: skärmar som har en mycket mer uttalad skärmkurva på sidokanterna, som svämmar över ner till enhetens sidor.
Till vänster: Samsung Galaxy S20+ med en centrerad hålhålsskärm. Till höger: Huawei Mate 30 Pro och Vivo Nex 3 5G med böjda "vattenfall"-skärmar.
Android 11 utökar nu stödet till hålhålsskärmar och vattenfallsskärmar genom display cutout API. Om utvecklare vill kommer API: et också att tillåta dem att bygga appar som kan använda hela vattenfallsskärmen inklusive kanterna, med infällningar för att hjälpa till att hantera interaktioner nära kanterna.
Dedikerad konversationssektion i aviseringar
Många av oss får massor av aviseringar på en dag, men alla aviseringar är inte lika viktiga. I allmänhet tenderar aviseringar från meddelandeappar att vara viktigare än andra aviseringar från appar. För det ändamålet introducerar Android 11 en dedikerad konversationssektion i meddelandeskärmen. Detta gör det möjligt för användare att enkelt hitta sina pågående konversationer med människor i deras favoritappar och hjälpa utvecklare att skapa djupare samtalsupplevelser.
Bubbles API
Förra året hade vi påpekat hur Bubbles API introduceras i Android 10 kommer att ersätta överläggs-API: et i en framtida Android-version. Med Android 11 pressar Google utvecklare av meddelande- och chattappar att göra övergången till Bubbles för att hålla konversationer synliga och tillgängliga när en användare multitasking på sin telefon.
Bildinfogning i meddelandesvar
Android 11 kommer nu att tillåta appar som stöder kopiera/klistra in bilder att låta sina användare infoga dessa bilder direkt i inline-svaret i meddelande, vilket innebär att användare kan trycka länge och ha alternativet Klistra in i snabbmenyn tillgängligt för dem när de svarar på ett meddelande från meddelandeskärm. Google Chrome arbetade redan mot stöd för att kopiera bilder direkt till Androids urklipp, och Gboard förberedde sig för att låta användare klistra in bilder direkt i sociala medier och meddelandeappar. Google nämner nu att dessa funktioner kommer att vara tillgängliga på Android 11 Developer Preview 1.
Bild- och kameraförbättringar
HEIF Animerade Drawables
ImageDecoder API låter nu utvecklare avkoda och rendera bildsekvensanimationer som är lagrade i HEIF (högeffektivt bildformat) filer. Detta kommer att göra det möjligt för utvecklare att använda tillgångar av hög kvalitet samtidigt som påverkan på nätverksdata och APK-storlek minimeras. HEIF bildsekvenser erbjuder drastiska filstorleksminskningar jämfört med GIF-filer, så HEIF har ett bra läge att vara ett bättre alternativ i mobilbaserade användningsfall. Utvecklare kommer att kunna visa HEIF-bildsekvenser i sina appar genom att anropa decodeDrawable med en HEIF-källa. Om källan innehåller en sekvens av bilder, returneras en AnimatedImageDrawable.
Inbyggd bildavkodare
Android 11 introducerar nya NDK API: er som låter appar avkoda och koda bilder från inbyggd kod för grafik eller efterbehandling samtidigt som en mindre APK-storlek behålls eftersom det inte finns något behov av att bunta en extern bibliotek. Den inbyggda avkodaren drar också fördel av Androids process för pågående plattformssäkerhetsuppdateringar.
Ljud av under kamerainspelning
Nya API: er tillåter appar att stänga av vibrationer från ringsignaler, larm och aviseringar när en kamerainspelningssession är aktiv, som dessa vibrationer kan tendera att introducera skakning i inspelningen, som kan förstärkas ytterligare om användaren zoomar i.
Bokeh-lägen
Appar kan nu använda metadatataggar för att aktivera bokeh-lägen på förfrågningar om kamerainspelning på enheter som stöder det.
Videoavkodning med låg latens
Appar kan nu använda nya API: er för att kolla upp och konfigurera uppspelning med låg latens för en specifik codec.
Video med låg latens är avgörande för appar och tjänster för realtidsströmning av video som t.ex Stadia. Videocodecs som stöder uppspelning med låg latens returnerar den första bildrutan i strömmen så snabbt som möjligt efter att avkodningen har börjat.
HDMI-läge med låg latens
Nya API: er tillåter nu appar att söka efter och begära automatiskt låg latensläge (även känt som spelläge). externa skärmar och TV-apparater. I det här läget inaktiverar skärmen eller TV: n grafikefterbehandling för att minimera latens.
Diverse Nya och uppdaterade API: er
Neural Networks API 1.3
Neural Networks API (NNAPI) är utformad för att köra beräkningsintensiva operationer för maskininlärning på Android-enheter. Med Android 11 utökar Google de funktioner och kontroller som är tillgängliga för utvecklare under detta API:
- Quality of Service API: er stöder prioritet och timeout för modellexekvering.
- Memory Domain APIs minskar minneskopiering och transformation för konsekutiva modellexekvering.
- Utökat kvantiseringsstöd genom asymmetrisk kvantisering med tecken för heltal där heltal med tecken används i stället för flyttal för att möjliggöra mindre modeller och snabbare slutledning.
Appkompatibilitet
Nya plattformsuppdateringar kan ge potentiella problem med appkompatibilitet för apputvecklare, så Google arbetar också med att prioritera appkompatibilitet. Med Android 11 lägger Google till nya processer, utvecklarverktyg och släppmilstolpar som syftar till att minimera effekten av plattformsuppdateringar och därmed minimera kompatibilitetsproblem.
- Minimera effekterna av beteendeförändringar: Google har gjort ett medvetet försök att minimera beteendeförändringar som kan påverka appar. Alla sådana förändringar har granskats noggrant tillsammans med deras inverkan, och ett försök har gjorts gör så många av dem som möjligt tills utvecklarna ställer in sin app targetSdkVersion på Android 11. Det är ännu inte möjligt att publicera applikationer som är inriktade på API-nivå 30 ännu, men Google kommer att möjliggöra möjligheten att göra det i en framtida Android 11 Developer Preview.
- Enklare testning och felsökning: I linje med vad vi rapporterade förra månaden kommer den första Android 11 Developer Preview med en "App-kompatibilitet" Utvecklaralternativ för att hjälpa utvecklare att testa nya plattformsändringar. Många brytande förändringar som introducerades i Android 11 Developer Preview har gjorts växlingsbar – gör det möjligt för utvecklare att tvångsaktivera eller inaktivera ändringarna individuellt från utvecklaralternativ eller via ADB. Detta bör hjälpa till att lindra smärtor när de testar appkompatibilitet eftersom utvecklare inte skulle behöva kompilera om sin app för grundläggande testning eller ändra targetSdkVersion.
- Uppdaterade grålistor: Google har uppdaterat listan över begränsade icke-SDK-gränssnitt. Android 11 Developer Preview-versionen har också tog bort metareflektionslösningen som vissa utvecklare använde.
- Dynamisk resursladdning: Utvecklare hade bett om ett offentligt API för att ladda resurser och tillgångar dynamiskt under körning, och i Android 11 har Google lagt till ett Resource Loader-ramverk.
- Ny milstolpe för plattformsstabilitet: Att förbereda appar för tidig kompatibilitet var en utmaning för utvecklare under utvecklarförhandsgranskningen/betafasen eftersom det inte fanns några tydliga datum för slutliga ändringar av plattformen för det version. Med Android 11 lägger Google alltså till en ny milstolpe som kallas "Platform Stability", som Google räknar med att nå i början av juni. Denna milstolpeversion kommer inte bara att inkludera de slutliga SDK- och NDK-API: erna, utan den kommer också att inkludera slutliga interna API: er och andra systembeteenden som kan påverka appar. Mer information om releasetidslinjen finns på Googles utvecklarwebbplats.
Om du vill testa den nya Android 11 Developer Preview kan du flasha en förbyggd systembild 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 flasha en förbyggd, Google-signerad Generic System Image (GSI) på vilken Project Treble-stödd enhet som helst med en olåst starthanterare. Om du inte har en av de stödda Pixel-telefonerna eller en enhet som stöder Project Treble med en upplåst bootloader, så kan du ladda ner den senaste systembilden för emulatorn i Android Studio. Android-emulatorn som kör Android 11-systemavbildningen har experimentellt stöd för att köra ARM 32 och 64-bitars binär kod på 64-bitars x86-systembilder.
Förutom att ställa in Android Emulator kan du också ladda ner Android 11 Developer Preview SDK och NDK i Android Studio. Google rekommenderar att du uppdaterar Android Studio till senaste Canary release för att dra nytta av IDE: s senaste funktioner. När du är klar kan du utforska de senaste plattformsfunktionerna och beteendeförändringarna i Android 11 Developer Preview genom att kolla in API-översikten, API-referensen och API-diff-rapporten. Om du har någon feedback att ge kan du meddela Google via någon av deras officiella kanaler. Om du hittar en bugg i utvecklarförhandsgranskningen kan du lämna in en rapport på Google Issue Tracker. Slutligen, se till att följa vår nyhetstagg för de senaste uppdateringarna på Android 11 – det finns många plattformsfunktioner och beteendeförändringar som vi upptäcker att Google helt enkelt inte dokumenterar!
Android 11 News på XDA