Androids nästa steg framåt i enkel utveckling är här med en massiv uppdatering av Kotlin-första Android Jetpack Support Libraries!
Hastigheten och lättheten i utvecklingen har varit kärnfokus för Android-plattformen praktiskt taget sedan dag ett. Redan från början satte Google sig för att lägga grunden för hur man kan stödja det största antalet enheter på enklast möjliga sätt på redan tillgänglig telefonhårdvara. Förra året vid Google I/O 2018 lade Google grunden för nästa generation av Android-stödbibliotek med Android Jetpack. På Google I/O 2019 tar Google sina supportbibliotek till nästa nivå med en rad nya utgåvor från en enklare till använd kamerabiblioteket med CameraX till ett enkelt sätt att integrera biometrisk autentisering av användarens val med Biometrics Prompt.
Kotlin-First
Kotlins programmeringsspråk har snabbt vuxit i popularitet sedan debuten. Efter att ha deklarerat att Kotlin kommer att få förstklassigt stöd från Google, meddelar Google nu att Android-utvecklingen i allt högre grad kommer att bli Kotlin-först. Många nya Jetpack-bibliotek kommer att erbjudas först i Kotlin. För att hjälpa utvecklare att komma igång med Kotlin uppmuntrar Google utvecklare att delta
Kotlin/Överallt händelser och ta Udacity kurser.CameraX
Medan Kamera 2 var ett stort steg framåt i kraft, användarvänlighet och standardisering för kamerafunktionalitet i Android, det är fortfarande otroligt komplext med varierande funktioner över olika enheter. Detta kan vara bra för en dedikerad kameraapplikationsutvecklare (även om till och med vissa miljardföretag kämpar med det), men det är mer på djupet än vad en genomsnittlig app vill inkludera. De flesta kameraapplikationer är bra med att rikta in sig på ett standardiserat API och låta enheten göra det tunga lyftet, och CameraX gör detta möjligt. Med full bakåtkompatibilitet på alla Camera2-enheter hela vägen tillbaka till Android Lollipop, ger CameraX ett enklare bibliotek för utvecklare att rikta in sig på och tillåter dem att upprätthålla bakåt- och framåtkompatibilitet med alla nuvarande eller framtida enheter som stöder Camera2 eller någon framtida efterföljare som CameraX integrerar med. Och det är inte bara för basfunktioner heller. CameraX drar full nytta av alla funktioner som Google har integrerat mellan Camera2 och CameraX, inklusive HDR, Portrait Mode, Wide Angle, Single shot multi-kameror och till och med Googles kritikerrosade Nattläge.
Biometrisk prompt
Biometrics Prompt tar bort komplexiteten i biometrisk autentisering och tar bort behovet av att gränssnittet direkt med någon av säkerhetsfunktionerna. En utvecklare behöver bara ringa Biometrics Prompt, och den kommer att lämna över begäran till systemets standard biometriskt autentiseringssystem, oavsett om det är fingeravtryck, iris, ansikte eller något annat helt. Detta Android Jetpack-bibliotek kommer att bli allt mer användbart som ny innovativ biometrisk autentisering metoder implementeras i telefoner, vilket gör det enklare att stödja det system som användarna väljer nu och i framtida.
LiveData och livscykler med coroutines
Jetpacks nya Lifecycle och LiveData KTX låter dig använda Kotlin-koroutiner som är livscykelmedvetna så att du kan stödja dina vanliga engångs-asynkronoperationer. Jetpack kommer att hantera ytterligare samtidighet på ett enklare sätt genom att "erbjuda coroutine scopes kopplade till livscykler, Coroutine avsändare som är livscykelmedvetna och stöd för enkla asynkrona kedjor med nya LiveData byggare."
Benchmark
Android Jetpack syftar till att göra det enklare att se till att dina appar fungerar som du vill att de ska, och det kommer nu att ge dig de nödvändiga verktygen för att testa prestanda med Benchmark. Det här biblioteket låter dig undersöka appens latens, databasfrågor, visa inflation och RecyclerView-rullning utan att behöva lämna Android Studio.
säkerhet
Säkerhet är ett område där det är lätt för även stora utvecklare att halka, och det här biblioteket syftar till att göra det mindre jobbigt. Från att hantera hårdvarustödda nyckellager till att generera och validera nycklar, Säkerhetsbiblioteket tar bort fokus från standarden och låter dig använda det för att faktiskt säkra din applikation.
Företag
Android Jetpack Enterprise-biblioteket förenklar integrationen med Enterprise Mobility Management-leverantörer, tillåter en app att skicka knappade apptillstånd utan att behöva oroa sig för att matcha hanterade konfigurationer över versioner.
ViewModel med SavedState
ViewModel och SavedInstanceState har gjort det enklare att återställa från krascher utan förlust av UI-konfigurationsdata, men ändå krävt en hel del kod. Genom att integrera SavedState i ViewModel har Google tagit bort den här plattan och gjort det mycket lättare att använda båda.
ViewPager2
ViewPager gjorde det enklare att implementera horisontell sidrullning i Android-appar. ViewPager2 är nästa utveckling och lägger till stöd för vertikal rullning och RTL-layouter.
Android för bilar
Android for Cars hänger starkt ihop med Googles nuvarande framsteg med Android Automotive OS. Det gör att du kan skapa en bildesignad version av din app för användning av dina användare på den Android Auto-huvudenhet (eller telefon) de väljer.
WorkManager
Bakgrundsuppgifter kan vara svåra att genomföra korrekt. Arbetsledare tar frustrationen ur det genom att hantera bakgrundsschemaläggningen åt dig på ett sätt som kommer att bete sig snyggt med enheten till hands.
Navigering
Nej, inte fysisk navigering. Navigera genom din applikation! De Android Jetpack Navigation biblioteket ger vägledning om hur du lägger upp rörelse genom din applikation för att undvika krascher, återvändsgränder och oförutsägbar navigering.
Komponera
Google sparar det bästa till sist, och tillkännager också en tidig förhandsvisning av Android Jetpack Compose, en obundet verktygslåda. Med utgångspunkt i vad Google lär sig av Flutter, syftar Compose till att skapa en mer reaktiv och deklarativ programmeringsmetod för Kotlin UI-utveckling med samma principer som gjorde Flutter till en community favorit. Compose byggs med följande kärnprinciper:
- Inklusive fördelarna med Kotlin - kortfattad och interoperabel med Java.
- Helt deklarativt för att definiera UI-komponenter. Ramverket hanterar UI-optimeringar och se hierarkiuppdateringar under huven - allt du behöver göra är att beskriva ditt UI som komponerbara funktioner.
- Bygg anpassade widgets med återanvändbara byggblock.
- Fungerar med befintliga vyer.
- Design av stödmaterial ur kartongen.
- Supportverktyg som Live Preview och Apply Changes.
Google kommer inte att släppa en beta eller ens alfa av Compose, men företaget kommer att öppna källkod för hela projektet så att utvecklare kan kolla upp det medan det görs. Om du stöter på några buggar under tidiga tester kan du arkivera buggar här.