Pregled za razvojne programere za Android 11

Google je danas objavio Android 11 Developer Preview 1. Ovdje su sve nove značajke platforme i promjene ponašanja koje programeri trebaju znati.

Danas, Google najavio prvi Android 11 Developer Preview u službenom postu na blogu. Tvrtka je već objavila slike sustava za sve programere zainteresirane za instaliranje novog OS-a Android. Preporučujemo da je instalirate što je prije moguće kako biste testirali svoju aplikaciju u odnosu na najnovije promjene ponašanja i značajke platforme u Androidu 11. Prije nego što zaronite u dokumente, evo sažetka svih glavnih novih značajki usmjerenih na razvojne programere u prvom pregledu za razvojne programere za Android 11.

Nove značajke umrežavanja/povezivanja

5G povezivost bit će u modi ove i sljedeće godine: Samsung čini pametne telefone s 5G širom dostupnošću sa serijom Galaxy S20 dok Qualcomm nastavlja podizati ljestvicu na 5G povezivost pametnog telefona. Uz Android 11, Google dodaje dva nova API-ja kako bi pripremio programere za stvarnost 5G povezivosti. Ne samo ovi, već i drugi API-ji koji se temelje na povezivanju također dobivaju malo dotjeranosti.

API za procjenu propusnosti

Google je ažuriranje ConnectivityManagera kako bi se olakšala provjera nizvodne i uzvodne propusnosti bez potrebe za ispitivanjem mreže ili potrebe da programeri izračunaju vlastite procjene. Ako modem ne podržava pružanje ovih podataka, API će napraviti zadanu procjenu na temelju postojeće mrežne veze.

Dynamic Meteredness API

Ovaj API omogućuje razvojnim programerima da provjere je li korisnik na nemjerenoj vezi, i ako je tako, nude veću razlučivost ili kvalitetu medija koji bi potencijalno mogli koristiti mnogo više podataka. S Androidom 11, ovaj API je proširen kako bi uključio mobilne mreže, tako da programeri sada mogu identificirati korisnike čiji operateri nude doista nemjerljive podatkovne usluge na njihovoj 5G mreži.

Poboljšanja usluge provjere poziva

Google je predstavio koncept "uloga" u Androidu 10. Pomalo su slične "zadanim aplikacijama" po tome što dodjeljivanje uloge aplikaciji omogućuje pristup određenim API-jima. Na primjer, postoji uloga pregledavanja poziva koji omogućuje aplikaciji treće strane da blokira ili identificira dolazne pozive prije nego što ih korisnik obavijesti. U Androidu 11 aplikacije za filtriranje poziva sada mogu primati dolazne pozive PROMJEŠATI/PROMIJEŠATI status provjere kao dio pojedinosti o pozivu. Zatim mogu prilagoditi zaslon nakon poziva koji pruža sustav kako bi korisnicima omogućili izvođenje radnji kao što je označavanje poziva kao neželjene pošte ili dodavanje pozivatelja u kontakte. To će pomoći aplikacijama za praćenje poziva učiniti više za korisnika pojednostavljivanjem reakcija nakon nepoznatog pozivatelja.

Poboljšanja API-ja za Wi-Fi prijedloge

The API za Wi-Fi prijedloge sada će aplikacijama za upravljanje povezivanjem omogućiti veću mogućnost upravljanja vlastitim mrežama. Na primjer, aplikacije za upravljanje povezivanjem sada će moći prisilno prekinuti vezu uklanjanjem mreže sugestije, upravljati mrežama Passpoint, primati više informacija o kvaliteti povezanih mreža i više.

Poboljšanja propusnice

Wi-Fi Passpoint, prema Wi-Fi Allianceu, rješenje je koje usmjerava mrežni pristup Wi-Fi žarišnim točkama putem omogućavanje automatskog otkrivanja i odabira mreže, pojednostavljivanje online prijave i neprimjetno omogućavanje žarišne točke roaming. Android 11 omogućit će provedbu i obavijest o datumu isteka a Profil propusnice, kao i podržavaju specifikaciju Common Name u profilu i dopuštaju samopotpisane CA za profile Passpoint R1. Kao što je gore spomenuto, API za Wi-Fi prijedloge također će omogućiti aplikacijama za povezivanje da upravljaju Passpoint mrežama.

Nove UI/UX značajke

Podrška korisničkog sučelja za prikaze s bušenjem rupa i vodopadom

OEM-ovi Android pametnih telefona predvode inovacije u hardverskom prostoru, a jedna od najznačajnijih hardverskih promjena koje smo vidjeli u posljednje vrijeme je uvođenje izreza na zaslonu. Serija Samsung Galaxy S20, na primjer, ima zaslone s jednom središnjom rupom. Zasloni s bušenjem rupa ili zasloni s rupicama kako ih Google naziva zasloni su koji imaju kameru okružen pikselima zaslona na cijelom rubu—gotovo kao da je netko koristio bušilicu rupa na prikaz. Još jedna inovacija zaslona je vodopadni zaslon: zasloni koji imaju puno izraženiju krivulju prikaza na bočnim rubovima, koja se prelijeva prema bokovima uređaja.

Lijevo: Samsung Galaxy S20+ s jednim centriranim zaslonom s rupom. Desno: Huawei Mate 30 Pro i Vivo Nex 3 5G sa zakrivljenim "vodopad" ekranima.

Android 11 sada proširuje podršku na zaslone s rupama i vodopadne zaslone putem API izreza za prikaz. Ako programeri žele, API će im također omogućiti izradu aplikacija koje mogu koristiti cijeli zaslon vodopada uključujući rubove, s umetcima koji pomažu u upravljanju interakcijama blizu rubova.

Namjenski odjeljak za razgovore u obavijestima

Mnogi od nas primaju hrpu obavijesti dnevno, ali nije svaka obavijest jednako važna. Općenito, obavijesti iz aplikacija za razmjenu poruka obično su važnije od ostalih obavijesti koje potječu iz aplikacija. U tu svrhu Android 11 uvodi namjenski odjeljak za razgovore u sjeni obavijesti. Ovo će omogućiti korisnicima da lako pronađu svoje tekuće razgovore s ljudima u svojim omiljenim aplikacijama i pomoći programerima da stvore dublja iskustva razgovora.

Bubbles API

Prošle smo godine istaknuli kako Bubbles API predstavljen u Androidu 10 zamijenit će API preklapanja u budućoj verziji Androida. S Androidom 11, Google potiče programere aplikacija za slanje poruka i chat da izvrše prijelaz na Bubbles kako bi razgovori bili u pregledu i dostupni kada korisnik obavlja više zadataka na svom telefonu.

Umetanje slike u odgovore na obavijesti

Android 11 sada će dopustiti aplikacijama koje podržavaju kopiranje/lijepljenje slika da svojim korisnicima omoguće umetanje ovih slika izravno u ugrađeni odgovor u obavijest, što znači da korisnici mogu dugo pritisnuti i imati na raspolaganju opciju kontekstnog izbornika Zalijepi kada odgovaraju na obavijest iz sjenilo obavijesti. Google Chrome već je radio na tome podrška za kopiranje slika izravno u Androidov međuspremnik, a Gboard se pripremao dopustiti korisnicima zalijepite slike izravno u društvene mreže i aplikacije za razmjenu poruka. Google sada spominje da će ove značajke biti dostupne na Android 11 Developer Preview 1.

Poboljšanja slike i kamere

HEIF animirani crteži

ImageDecoder API sada će programerima omogućiti dekodiranje i renderiranje animacija niza slika koje su pohranjene u HEIF (format slike visoke učinkovitosti) datoteke. To će omogućiti razvojnim programerima da iskoriste sredstva visoke kvalitete uz smanjenje utjecaja na mrežne podatke i veličinu APK-a. Ponuda HEIF sekvenci slika drastično smanjenje veličine datoteke u usporedbi s GIF-ovima, tako da je HEIF u dobroj poziciji da bude bolja alternativa u slučajevima korištenja na mobilnim uređajima. Programeri će moći prikazati HEIF sekvence slika u svojim aplikacijama pozivanjem decodeDrawable s HEIF izvorom. Ako izvor sadrži niz slika, vraća se AnimatedImageDrawable.

Izvorni dekoder slike

Android 11 predstavlja nove NDK API-je koji će omogućiti aplikacijama dekodiranje i kodiranje slika iz izvornog koda za grafiku ili naknadnu obradu uz zadržavanje manje veličine APK-a jer nema potrebe za spajanjem vanjskog knjižnica. Izvorni dekoder također iskorištava Androidov proces za stalna sigurnosna ažuriranja platforme.

Isključivanje zvuka tijekom snimanja kamerom

Novi API-ji omogućuju aplikacijama isključivanje vibracija melodija zvona, alarma i obavijesti kada je aktivna sesija snimanja kamerom, kao te vibracije mogu dovesti do podrhtavanja snimke, koje se može dodatno pojačati ako korisnik zumira u.

Načini bokeh

Aplikacije sada mogu koristiti oznake metapodataka za omogućavanje načina bokeh na zahtjevima za snimanje kamerom na uređajima koji to podržavaju.

Video dekodiranje niske latencije

Aplikacije sada mogu koristiti nove API-je za ček i konfigurirajte reprodukciju niske latencije za određeni kodek.

Video s niskom latencijom ključan je za aplikacije i usluge za strujanje videa u stvarnom vremenu Stadia. Video kodeci koji podržavaju reprodukciju niske latencije vraćaju prvi okvir streama što je brže moguće nakon početka dekodiranja.

HDMI način niske latencije

Novi API-ji sada dopuštaju aplikacijama da provjere i zatraže automatski način niske latencije (također poznat kao način igre) na vanjski zasloni i televizori. U ovom načinu rada zaslon ili TV onemogućuju naknadnu obradu grafike kako bi se smanjili latencija.

Razni novi i ažurirani API-ji

API za neuronske mreže 1.3

Neural Networks API (NNAPI) dizajniran je za izvođenje računski intenzivnih operacija za strojno učenje na Android uređajima. S Androidom 11 Google proširuje operacije i kontrole dostupne programerima u okviru ovog API-ja:

  • API-ji kvalitete usluge podržavaju prioritet i vremensko ograničenje za izvođenje modela.
  • API-ji domene memorije smanjuju kopiranje i transformaciju memorije za uzastopno izvođenje modela.
  • Proširena podrška za kvantizaciju cjelobrojna asimetrična kvantizacija s predznakom pri čemu se cijeli brojevi s predznakom koriste umjesto brojeva s pomičnim pomicanjem kako bi se omogućili manji modeli i brže zaključivanje.

Kompatibilnost aplikacije

Nova ažuriranja platforme mogu dovesti do potencijalnih problema s kompatibilnošću aplikacija za programere aplikacija, stoga Google također radi na davanju prioriteta kompatibilnosti aplikacija. Uz Android 11, Google dodaje nove procese, alate za razvojne programere i prekretnice u izdanju kojima je cilj minimizirati utjecaj ažuriranja platforme i time minimizirati probleme s kompatibilnošću.

  • Minimiziranje utjecaja promjena ponašanja: Google je uložio svjestan napor da minimalizira promjene ponašanja koje mogu utjecati na aplikacije. Sve takve promjene pomno su pregledane zajedno s njihovim učinkom i učinjen je pokušaj da se neka se što više njih uključi dok programeri ne postave targetSdkVersion svoje aplikacije na Android 11. Još uvijek nije moguće objaviti aplikacije koje ciljaju API razinu 30, ali Google će to omogućiti u budućem Android 11 Developer Previewu.
  • Lakše testiranje i otklanjanje pogrešaka: U skladu s onim što smo objavili prošli mjesec, prvi Android 11 Developer Preview dolazi s Opcija za razvojne programere “Kompatibilnost aplikacija” za pomoć razvojnim programerima u testiranju novih promjena platforme. Uvedene su mnoge prijelomne promjene u Android 11 Developer Previewu preklopni—dopušta razvojnim programerima da prisilno omoguće ili onemoguće pojedinačne promjene iz opcija za razvojne programere ili preko ADB-a. To bi trebalo pomoći u ublažavanju problema prilikom testiranja kompatibilnosti aplikacije jer programeri ne bi morali ponovno kompajlirati svoju aplikaciju za osnovno testiranje ili promijeniti targetSdkVersion.
  • Ažurirani sivi popisi: Google je ažurirao popis ograničena ne-SDK sučelja. Izdanje Android 11 Developer Preview također ima uklonio zaobilazno rješenje meta-refleksije koje su neki programeri koristili.
  • Dinamički učitavač resursa: programeri su tražili javni API za dinamičko učitavanje resursa i imovine tijekom izvođenja, a u Androidu 11 Google je dodao okvir učitavača resursa.
  • Nova prekretnica stabilnosti platforme: priprema aplikacija za ranu kompatibilnost bila je izazov za programere tijekom faza Developer Preview/Beta budući da za to nisu postojali jasni datumi za konačne promjene platforme verzija. Stoga, s Androidom 11, Google dodaje novu prekretnicu u izdanju pod nazivom "Platform Stability", koju Google očekuje postići početkom lipnja. Ovo prekretničko izdanje neće uključivati ​​samo konačne SDK i NDK API-je, već će uključivati ​​i konačne interne API-je i druga ponašanja sustava koja mogu utjecati na aplikacije. Više informacija o vremenskoj liniji izdanja dostupno je na Googleovoj web stranici za razvojne programere.

Ako želite testirati novi Android 11 Developer Preview, možete flashati unaprijed izgrađenu sliku sustava na Pixel 2, Pixel 2 XL, Pixel 3, Pixel 3 XL, Pixel 3a, Pixel 3a XL, Pixel 4 ili Pixel 4 XL. Alternativno, možete flash unaprijed izgrađenu sliku generičkog sustava (GSI) potpisanu od Googlea na bilo koji uređaj koji podržava Project Treble s otključanim bootloaderom. Ako nemate jedan od podržanih Pixel telefona ili uređaj koji podržava Project Treble s otključan bootloader, tada možete preuzeti najnoviju sliku sustava za emulator u Androidu Studio. Android emulator koji pokreće sliku sustava Android 11 ima eksperimentalnu podršku za pokretanje ARM 32 i 64-bitnog binarnog koda na 64-bitnim slikama x86 sustava.

Osim postavljanja Android emulatora, također možete preuzeti Android 11 Developer Preview SDK i NDK unutar Android Studija. Google preporučuje da ažurirate Android Studio na najnovije Canary izdanje kako biste iskoristili najnovije značajke IDE-a. Nakon što ste sve postavili, možete istražiti najnovije značajke platforme i promjene u ponašanju u Android 11 Developer Preview-u tako da pogledate pregled API-ja, API referencu i API diff izvješće. Ako imate povratne informacije, možete ih obavijestiti Google putem bilo kojeg od njihovih službenih kanala. Ako pronađete grešku u pregledu za razvojne programere, možete je prijaviti na Google Issue Trackeru. Na kraju, svakako pratite našu oznaku vijesti za najnovija ažuriranja na Androidu 11—postoje mnoge značajke platforme i promjene u ponašanju za koje smatramo da ih Google jednostavno ne dokumentira!

Vijesti o Androidu 11 na XDA