Hva er nytt i Android Lollipop

What er nytt i Android Lollipop
69
Del
30
Del
Dette Cyber ​​mandag Envato Tuts + kurs vil bli redusert til bare $ 3. Ikke gå glipp av.

Etter måneder med spekulasjoner, skudd og erting, Googleofficially lansert Android 5.0 til verden 12. november 2014. SDK wasmade tilgjengelig på 3. november. Vi allerede visste mye aboutthe funksjoner, på grunn av L
previewSDK som ble utgitt 25. juni 2014. Det vi ikke visste var hva L


ville stå for.

Lollipop
ble thename gitt til 5.0-oppdateringen. Ser tilbake, Lollipopwas en klar favoritt. Men, hvis gitt nok tid til å spekulere, det åpen onceagain har makt til å overraske.

Lollipop er asignificant oppdatering for Android-plattformen. Det er uten tvil den største utgivelsen todate, og definitivt den mest ambisiøse.

1. Funksjoner

Nå som Android SDK er ute, her er en roundup ofsome av de nye funksjonene i Android 5.0.

Batteri

Prosjekt Volta

I de senere år, har Google fokusert med hver Android utgivelse på en bestemt utvikling aspekt av operativsystemet, og hvordan den kan forbedres. For 5.0, ble det bedre batterilevetid.

JobScheduler API allowsyou å kjøre jobber asynkront på et senere tidspunkt eller under spesielle conditions.JobInfo objekter kan brukes til å definere forholdene en planlagt jobb vil rununder. Anmeldelser

Takket være disse tilleggene, utviklerne har nå en mye mer kontroll over når og hvordan batteridrenerende oppgaver utføres.

Utviklingsverktøy

Det er en ny ADB
kommando dumpsys batterystats som kan brukes til å generere statistiske data om batteribruk på en enhet. Ta en titt på følgende kommando for å se hvordan dette fungerer

ADB shell dumpsys batterystats --charged. ≪ pakke-name >

Meldinger

I Lollipop kan varslinger vises på thelock skjermen. Utviklere kan spesifisere hvor mye informasjon som vises withina varsling via setVisibility, som aksepterer følgende verdier:

VISIBILITY_PRIVATE: viser grunnleggende informasjon, som varslingsikonet, men skjuler varslingen innhold

VISIBILITY_PUBLIC: lyser varsel innhold

VISIBILITY_SECRET: viser ingenting, unntatt selv varslingsikonet

Metadata kan nå legges på varsler for å tillate kategorier og prioritet, og å samle inn flere kontakter.

Nøkkel varsler, for eksempel innkommende anrop, vil vises i aheads-up varsling vindu, som vil flyte på toppen av dagens app untilthe bruker erkjenner eller avviser varselet.
< h3> Multitasking

Sist brukte skjermen har blitt omdøpt til oversikt
. Med thenew navn kommer nye API-er som gir bedre multitasking alternativer på Android. Youcan nå har dine aktiviteter behandlet som oppgaver og bli vist i sin egen vindus inthe oversiktsbildet.

For eksempel en nettleser app kan settes slik at hver tabhas et eget vindu. I forrige Sist brukte skjermen, vil en enkelt nettleser app har blitt vist

Hvis du har et nettsted, kan du legge. ≪ meta name = "tema-farge" content = "# 3F51B5" > til header delen for å ha oversikt displayet gitt farge som header for ditt nettsted.

Runtime og ART

Tidligere versjoner av Android har alle brukt Dalvik som theprocess virtuell maskin. Søknader blir ofte skrevet i Java, som isthen kompilert til bytecode. Dette blir deretter oversatt til Dalvik Bytecode andstored i .dex og .odex filer, for Dalvik til da prosessen.

Dette er en veldig abasic forklaring på hva runtime gjør og forhåpentligvis formidler itsimportance. Applikasjoner kjøres på prosessen virtuelle maskinen så itsperformance bestemmer den generelle ytelsen til programmet og er en flaskehals.

Dalvik bruker JIT (Just In Time) samling, som betyr thatit bare kjører programmet i øyeblikket det er nødvendig.

ART, derimot, bruker en AOT (på forhånd) samling for å kompilere Bytecode. Når et program er installert, er det compiledby kunstens dex2oat
verktøyet, som skaper ELF kjør stedet for .odex filer. Fra da av søknaden isexecuted fra allerede utarbeidet ELF kjørbar.

Det er mye lagret kompilere på bekostning av longerapplication installere tider og litt ekstra diskplass.

Med tillegg av forbedret søppelrydding (GC), utkonkurrerer ART Dalvik i nesten enhver måte, noe som gjør for en skarpere og mer flytende Android opplevelse.

Android TV

For å bidra til å bringe din app til store skjermen viser, introduserer Lollipop den Leanback UI og Android TV Input Work (TIF). The Leanback biblioteket gir brukergrensesnitt ting for TVapps. TIF er utformet slik at TV-apper å håndtere video streamsfrom kilder som HDMI-innganger, TV-tunere, og IPTV-mottakere.

Grafikk

Khronos OpenGL ES 3.1 er lagt til. Key featuresinclude:

beregne shaders

separat shader objekter

shading språk forbedringer

utvidelser for avanserte blandingsmodi og debugging

indirekte uavgjort kommandoer

multisample og sjablong teksturer

Android 5.0 er fortsatt bakoverkompatibel med OpenGL ES 2.0 og 3.0.

Android Extension Pack (AEP) Anmeldelser

For å supplere OpenGL ES 3.1, et sett med OpenGLES extensions er lagt som gir mulighet for følgende:

garantert fragment shader-støtte for shader lagring buffere, bilder og atomics (fragment shader-støtte er valgfritt i OpenGL ES 3.1)

ulike blandingsmodi for hver farge vedlegg i en ramme buffer

flislegging og geometri shaders

ASTC (LDR) tekstur komprimeringsformat
< li> per-sample interpolering og shading

Chrome Vis

Android Lollipop inkluderer en ny versjon av Chromium for webvisning, basert onthe Chromium M37 utgivelse som legger til støtte for WebAudio , etter WebRTC, og WebGL.

Native støtte forweb Components er også inkludert i oppdateringen, og vil tillate bruk av Polymer og dens Material Designelementer uten krever polyfills.

Per Android 5.0, er Chromium nå oppdaterbar fra Play Store, så nye API-er og feilrettinger vil være availableimmediately og vil ikke lenger kreve en oppdatering av operativsystemet Android.

Media Browsing

Den nye android.media.browse API tillater apps å bla themedia innhold bibliotek av andre apps. Den MediaBrowserService klassen brukes til å eksponere medier i anapplication, mens Mediabrowser klassen brukes til å samhandle med en Mediabrowser service.

Media PlaybackControl

To nye klasser har blitt introdusert å gjøre playbackcontrol enklere å administrere på tvers av ulike UiS og tjenester.

MediaSession erstatter RemoteControlClient. Det gir en setof tilbakeringing metoder for bruk i transportkontrollene og medieknapper. MediaController kan brukes til å lage en egendefinert mediacontroller app, som deretter kan brukes til å sende kommandoer til en MediaSession

New Sensorer

To nye sensorer har blitt introdusert.

Tilt Detector: forbedrer aktivitet anerkjennelse

Puls Sensor: stand til å rapportere hjertefrekvens for brukeren å berøre enheten

Selvfølgelig, begge disse sensorene krever støttet maskinvare .

ManagedProvisioning

Enhetsadministratorer kan bruke en administrert provisioningservice å legge apps til en separat klarte profil. Hvis det er en existingpersonal konto på en enhet som har blitt klargjort, vil de administrerte profileapps vises sammen med de eksisterende applikasjoner.

Device Eier

En enhet eieren er en spesialisert type deviceadministrator som kan skape og fjerne sekundære brukere og konfigurere globalsettings, i hovedsak gi Android en tradisjonell administrator og bruker accountsystem.

Skjerm Feste

Skjerm pinning er en ny funksjon som kan sammenlignes med kioskmodus på iOS. Screen låsing inkluderer følgende funksjoner:

Statuslinjen er blank

Andre apps kan ikke starte nye aktiviteter

Bruker meldinger og statusinformasjon er skjult <... br>
Den nåværende app kan opprette nye aktiviteter så lenge ingen newtasks opprettes

Skjerm låsing kan aktiveres manuelt via Innstillinger >.; Sikkerhet > Screen Pinning. Det kan også aktiveres programmatisk. Den startLockTask metoden canbe ringte fra din app for å aktivere skjermen låsing. Hvis programmet er ikke fra en enhet eier, vil en bekreftelsesmelding vises. Den setLockTaskPackages metoden kan bli oppringt av en eier app og willavoid bekreftelsesmeldingen.

For å deactivatescreen låsing, må du ringe stopLockTask hvis det ble initiert av en deviceowner app. Hvis det ble aktivert av en ikke-enhet eier, kan brukeren gå ut av skjermen låsing modus byholding både ryggen og recents knapper.

Skjermdeling

Skjerm digitalisering er nå mulig gjennom newandroid.media.projection APIer. Den skaper VirtualDisplay metoden lar thecalling app for å fange skjermen i en overflate objekt, som deretter kan sentacross nettverket. API kan bare fange opp ikke-sikkert innhold og ikke includeaudio.

Kamera

RAW image fange har endelig kommet på Android, thanksto den nye android.hardware.camera2 API.
< h3> Bluetooth Low Energy

Android-enheter kan nå virke som
Bluetooth LE periferiutstyr. Apps kan gjøre bruk ofthis å gjøre sin tilstedeværelse kjent for enheter i nærheten. Med de nye android.bluetooth.le APIer, kan du aktivere yourapps å koble til Bluetooth-enheter, kringkasting annonser, og scanfor svar. Disse nye funksjonene kommer også med en ny manifestpermission, BLUETOOTH_ADMIN.

Disse APIer vil være svært nyttig når du arbeider withwearable enheter, helse og fitness apps, og overvåking apps. Alle disse arepredicted vekstområder for Android i nær fremtid

NFC

NFC har blitt forbedret på flere måter.

  • Android Beam er nå et alternativ i aksjen menyen.

    invokeBeam kan brukes til å initiere deling av data.You ikke lenger å fysisk bump enheter.

    registerAidsForService og setPreferredService har beenadded å bidra til utviklingen av betalings apps.

    Flere NetworkConnections

    Nye APIer gir mulighet for apps til å spørre nettverk for availablefeatures, for eksempel om nettverket er mobilnettet, oppmålt eller Wi-Fi.

    Skrive Work

    Bitmap bilder kan nå gjøres fra PDF dokumentsider, ved hjelp av den nye PdfRendered klassen.

    Input Method Editors (IME)

    Du kan nå bla gjennom ulike IME tilgjengelig for theplatform. Dette gjøres ved hjelp av shouldOffetToNextInputMethod metoden.

    2. Material Design

    En av de største funksjonene i Android 5.0 er MaterialDesign. Material Design er et sett med retningslinjer knyttet til visuell design, innhold bevegelse, og brukermedvirkning. Retningslinjene er ment å gå beyondAndroid og er designet for et bredt utvalg av enheter og plattformer.

    Polymer isa bemerkelsesverdig eksempel på kryssplattform natur Material Design, withGoogle skape flere Material Design web-elementer for å hjelpe til bygging ofwebsites /web apps med Material Design tema. Til tross for sin kryssplattform natur, remainsa Material Design fortsatt sentrale punktet i Android 5.0

    Nye Widgets

    Lollipop introdusert to nye widgets.
    < li> CardView: Denne widgeten lar for informasjon til å bli gruppert sammen ina konsekvent måte. Selve kortet kan ha sin dybde endret for å fremme orhighlight det som nødvendig

    RecyclerView:.. Dette er en mer avansert versjon av theListView widget

    Nye Temaer Anmeldelser

    Det er to nye temaer som bygger på materiale Designprinciples, Mørk Material og lys materiale. Både bruk nye brukergrensesnitt system widgets. System widgets er lett å tilpasse, og du kan stille theircolor palett. Flere animasjoner og overganger er også mislighold av thesethemes, for eksempel ringvirkninger.

    Dybde og Shadow

    Dybde kan nå bli endret på Android utsikt gjennom Newz eiendommen. Høyere Z-verdiene kastet større skygger rundt visning, noe som gir theappearance av økt høyde. Dette er et fast innslag i Material Designethos der målet er å skape et tekstil utseende gjennom bruk oflayers.

    Animasjoner

    En annen stift av Material Design er animasjon. Touchfeedback animasjoner og en rekke aktivitets overganger all hjelp i å skape atactile og innlevelse. Målet er ikke å ha informasjon ventilasjons eller forsvinne. Hver visning /objekt skal vises som et lag på et underlag.

    Tenk deg en fin, ren, hvit skrivebord. På denne pulten du havevarious papirer, post-it-lapper og skrivesaker. Når du ser ned på pulten, it'snot en flat visning. Pulten inneholder flere lag, og objekter har differentdepths og kastet skygger på laget under.

    Hvis du trenger å se en pageunderneath en annen side, må du flytte den dekker side ut av veien. Hvis du wantto plassere den bærbare på skrivebordet, må du skyve de eksisterende avisene ut ofthe måte å gjøre plass. Når du berører noe på skrivebordet, flytter den, bøyer, vibrere og stokker.

    3. Ved hjelp av Android 5.0

    For å komme i gang med Android 5.0, laste ned SDK platformfor V21 i ønsket IDE. Dette vil mest sannsynlig bli gjort gjennom SDKmanager i Eclipse eller Android Studio.

    I ApplicationManifest.xml fil og /eller build.gradle fil, sett targetSdkVersion til 21.

    Viktige endringer og betraktninger:

    Det er et ordtak i superhelt verden, "Med stor makt, kommer stort ansvar." Det er en lignende en i developmentcommunity, "Med store oppdateringer, kommer omfattende testing."

    Her er en rask sjekkliste, hvis du allerede har en Android-app:

    Har min app run problemet fritt på ART?

    Hvis min app bruker varslinger, hvordan vil de bli integrert i låseskjermen?

    Kan brukergrensesnittet dra nytte av en oppdatering? Er Material Design en god passform og hvor mye arbeid vil det innebære?

  • RemoteControlClient klassen er nå foreldet, så skal jeg flytte over til MediaSession API?
  • WebView bedriften blokker blandet innhold og tredjepart cookies som standard. Må jeg bruke setMixedContentMode og setAcceptThirdPartyCookies?

    En komplett liste listen kan bli funnet på Android Developer nettstedet.

    4. Bakoverkompatibilitet

    En av de største endringene i Android 5.0 er brukergrensesnittet med theintroduction of Material Design. Å gjøre bruk av Material Design og sette bestdesign praksis å bruke, tar mye omtanke og arbeid på den delen ofthe utbygger.

    For eksisterende apps, utviklerne står overfor furtherchallenges, som for eksempel hvordan du kan utnytte de newfeatures av 5.0 samtidig opprettholde bakoverkompatibilitet, noe som gir aconsistent brukeropplevelse på tvers av ulike API nivåer.

    For å vise hvordan du bruker Android 5.0 og Material Design i prosjektet, har jeg laget en enkel app. Den består av en enkelt aktivitet som viser flere widgets. Jeg har da lagt følgende til res /mappe:

    meny-V21 /. Denne inneholder en kopi av menu_main.xml og vil bli brukt til å vise Material Design ikoner på Android 5.0-enheter

    verdier-v11 /: Denne inneholder en styles.xml fil som setter foten tema å holo.light
    for alle enheter som kjører Android 3.0 eller nyere. Utseende endringer i handlingsfeltet er også gjort i denne filen

    verdier-V21 /. Denne inneholder en styles.xml fil som setter foten tema å material.light
    for enheter som kjører på Android 5.0 og nyere .
    Den definerer også basefarger.

    under bildet viser app som kjører på en 4.4.2-enhet og en 5.0-enhet. Materiell temaet har blitt søkt om 5.0+ enheter. Andre enheter vil motta holo.light tema. Det viser standard tilstand av både temaer og brukergrensesnittet forskjeller mellom dem.

    Farge og Handling Bar

    Med Material Design, definere appens basisfarger til fitin med merkevaren har aldri vært enklere. For eksempel vil legge den under koden til temaet satt thenotification bar bakgrunn, handlingen bar bakgrunnen, og brukergrensesnittet widgets
    < -.! Base søknad tema. - > < style name = "AppTheme" forelder = "android: Theme.Material.Light" > <! - Tilpass tema her. - > <! - hovedtema farger - > <! - din app branding farge for app bar - > < element name = "android: colorPrimary" > # 0d7963 < /element > <! - mørkere variant for statuslinjen og kontekstuelle app barer - > < element name = "android: colorPrimaryDark" > # ff0d5b47 < /element > <! - tema UI kontroller som boksene og tekstfelt - > < element name = "android: colorAccent" > # 0d7963 < /element > < /style >

    Resultatene kan være svært slående og app kan becomeidentifiable med bare et blikk. Det finnes også et nytt sett med Material Design ikoner, som er en annen rask og enkel måte å bringe et moderne brukergrensesnitt føler til eksisterende app.

    Her er et eksempel på forskjellen laget ved hjelp Material Design ikoner og definere Hovedtemafarger:

    Bruk av handlingsfeltet, og fargen er en dominerende featureof Material Design og kan effektivt merkevare og skille din app. En wayto gi en konsistent brukeropplevelse på tvers av ulike API nivåer er å replicatethese funksjoner over til stiler og temaer som er beregnet for ulike API nivåer.

    For eksempel, hvis vi sammenligner programmet kjører på en 4.4.2 enhet til en 5.0 enhet:

    Som du kan se, de har en veldig karakteristisk utseende til them.To forbedre dette, kan vi bruke de samme Material Design ikoner på API nivåer lowerthan 5.0. Vi kan også style handlingsfeltet slik at den ligner på MaterialDesign versjon.

    For ikonene, vi kan endre bildene i res /meny /meny-main.xml til Material Design ikoner. For handlingsfeltet, kan vi redigere res /verdier-v11 /styles.xml filen til looklike følgende:
    < resources > <! - Base søknad tema. - > < style name = "AppTheme" forelder = "android: Theme.Holo.Light" > <! - Tilpass tema her. - > < element name = "android: actionBarStyle" > @ stil /MyActionBar < /element > < /style > < style name = "MyActionBar" forelder = "@ android: style /Widget.Holo.Light.ActionBar" > < element name = "android: bakgrunn" > # 0d7963 < /element > < /style > < /ressurser >

    Her er en titt på de to forhold, etter at endringene:

    Den versjonen som kjører på 4.4.2 enheten becomesmore gjenkjennelig som vår søknad og vår merkevare. Uten vesentlige endringer, app ser allerede mer konsekvent på tvers thedifferent APIer og har en mer moderne føler for det.

    Bruk av Non-SupportedFeatures

    Enkelte funksjoner er eksklusivt til Android Lollipop, særlig theactivity overganger og avslører animasjoner. Dette betyr ikke nødvendigvis meanthat du må gi avkall på å bruke dem eller opprette en egen app som gjør bruk øvelsene. Du kan sjekke systemversjonen under kjøring og bare performcertain API-kall hvis app kjører på en riktig versjon av Android

    Et eksempel for å sjekke om systemet er 5.0+.
    //Sjekk om vi 're kjører på Android 5.0 eller higherif (Build.VERSION.SDK_INT > = Build.VERSION_CODES.LOLLIPOP) {//Ring noen vesentlige motiv APIer her} else {//implementere denne funksjonen uten materialdesign}
    Holde PreviousThemes

    Bare fordi du kan gjøre noe betyr ikke alltid thatyou burde. Det er absolutt ingenting galt med Holo tema som Android hasbeen bruker siden Honeycomb. Du kan gi alternative oppsett og temaer andhave dem gjelder ulike API nivåer. For eksempel kan du ha thematerial Design tema gjelde for alle enheter med en API for 5.0 og nyere. TheHolo tema vil gjelde for alle enheter med en API på 3,0 og oppover. Endelig kunne theclassic tema brukes på alle enheter under 3,0

    For å gjøre dette, vil du bruke følgende kommandoer i yourproject:.

  • res /verdier /(standard plassering)

    res /verdier-v11 /(for 3.0 +)

    res /verdier-V21 /(for 5.0 +)

    I hver katalog, kan du plassere en styles.xml fil som willdefine ønsket tema.

    Support biblioteker

    V7 R21 støttebiblioteker støtte flere widgets og funksjoner fra Material Design.

    Theme.AppCompat muliggjør bruk av fargepaletten ved å utvide en av de AppCompat temaer. For eksempel Theme.AppCompat.Light:
    < style name = "Theme.MyTheme" forelder = "Theme.AppCompat.Light" > < element name = "colorPrimary" > @ farge /material_blue_500 < /element > < element name = "colorPrimaryDark" > @ farge /material_blue_700 < /element > < element name = "colorAccent" > @ farge /material_green_A200 < /element > < /style >

    Det gir også Material Design widgets for following:



    EditText

    CheckBox

    Spinner

    RadioButton

    SwitchCompat

    CheckedTextView

    The V7 støtte bibliotek gir deg også tilgang til det nye CardView og RecyclerView widgets.

    Hvis du holder deg med AppCompat i dine layout design, er det mulig å lage et enkelt oppsett som vil opprettholde de samme visuelle gjennom flere API nivåer.

    Hvis du vil bruke V7 støtte bibliotek, må du legge det prosjektet. Hvis du bruker Android Studio og Gradle, kan det legges til avhengig seksjon i build.gradle filen:
    avhengig {kompilere 'com.android.support:appcompat-v7:21.0.+ "kompilere" com. android.support:cardview-v7:21.0.+ 'kompilere' com.android.support:recyclerview-v7:21.0.+ '}

    Når herunder v7 støtte biblioteket må du sette din minSdkVersion til 7.
    < h2> Konklusjon

    Android 5.0 er en stor utgivelse. Oppdateringer som ART Andon-skjerm varslinger vil foreta en umiddelbar effekt. Andre oppdateringer slik asMaterial Design, Oversikt og vil Job Planlegging tar tid for utviklere toimplement og adoptere.

    Brukerne vil også spille en stor rolle i å forme nearfuture av Android. Previousattempts på å bringe Android til TV plassen har ikke blitt godt mottatt. SmartTVs på hele har ennå ikke blitt en må-ha-enheten.

    Å ha en enhetlig og brukeropplevelsen acrossmultiple enheter og skjermer er spennende og etter min mening nødvendig goingforward. Suksessen til dette, men til slutt vil avhenge av adopsjon og userdemand.

    Google satte scenen under årets Google I /O og med Lollipop theactors er nå montert. Uavhengig av hvor lenge stykket går for og theplaudits den mottar, kan ingen si at Google ikke har prøvd.