Using Gradle Bygg Varianter
15
Del
6
Del
Dette Cyber mandag Envato Tuts + kurs vil bli redusert å bare $ 3. Ikke gå glipp av.
Innledning
En av de viktigste funksjonene i Android Studio er integrering av Gradle som en Android-build system. Mens den generelle hensikten med en build system er å ta kildekoden og lage en installerbar fil for brukerne, en APK i tilfelle av Android, gir Gradle mye mer funksjonalitet.
Gradle håndterer avhengighet ledelse, for eksempel lokale JAR-filer, innfødte .so filer og biblioteker vert på Maven. Det gir også mulighet for enkel konfigurasjon av prosjektegenskaper og gjør det mulig for utviklere å lage ulike versjoner av sine programmer i en ganske enkel måte. Det siste elementet, kjent som bygge varianter, er det du vil lære om i denne artikkelen.
1. Hva er Bygg Varianter?
Bygg varianter er spesifikke bygger på at du kan produsere fra Gradle, basert rundt felles kjerne kildekode. Mens en standard app kan ha en debug og slipp bygge typen, kan du utdype dette ved å legge til smaken dimensjoner.
Flavor dimensjoner tillate deg å bruke mappestrukturen på prosjektet for å endre hvordan enkelte bygger se ut og handle for brukerne. Dette gjør det mulig for utviklere å enkelt produsere flere lignende apps med forskjellige stiler og konfigurasjon.
2. Klar Bygg Varianter i Gradle
Du kan komme i gang ved å gå inn i prosjektet build.gradle fil og legge en flavorDimensions element innsiden av android Dette definerer hva dimensjoner dine bygge varianter kan bruke. Hver bygger på at man produserer behov for å ha et produkt smaken fra hver av dimensjonene. Dette betyr at hvis du trenger bare én dimensjon for dine apps, som er et vanlig scenario, så kan du endre Under flavorDimensions definisjon, du kan definere productFlavors. For dette eksempelet, vil vi holde ting enkelt og definere to varianter per dimensjon. Hver bygge som du oppretter vil trenge en unik Nå som du har definert alt for bygg din varianter i build.gradle kan du åpne Build Varianter panel i nedre venstre hjørne av Android Studio for å se hva varianter er tilgjengelig for å bygge. Du vil merke at hver smak du legge vokser antall varianter eksponentielt. Merk også at buildTypes av debug og utgivelsen blir kastet inn i matrise av dimensjoner. Selv om du kan nå installere forskjellige versjoner av programmet ditt, det er ingenting å skille dem fra hverandre. Det er her du virkelig kommer til å bruke Gradle bygge systemet til din fordel. Gradle benytter mappestrukturen av et prosjekt for å finne ut hvilke filer vil bli brukt for å utarbeide en app. I prosjektstruktur under app /src / Enhver ressurs som finnes i et produkt smaken som også er definert i hoved vil automatisk gå foran . Vi kan se at i aksjon ved å se på hoved /res /verdier /colors.xml. Hvis prosjektet ikke allerede har en colorPrimary verdi definert, gå videre og definere det. Hvis du startet med et nytt tomt prosjekt å følge med denne artikkelen, bør du se en forhåndsdefinert verdi av # 3F51B5. Kjører programmet skal vise colorPrimary verdi som fargen på verktøylinjen i programmet. Hvis du oppretter en ny colors.xml fil under grønn /src /verdier /, kan du overstyre colorPrimary attributt med en annen verdi. I dette tilfellet, la oss bruke # 00FF00 Når filen er opprettet og fargen er ferdig, gå tilbake til Build Varianter panel i Android Studio og velg oneGreenDebug build variant. Du kan deretter kompilere og kjøre den varianten av programmet. Selv om den grønne varianten har farget verktøylinjen grønne, de andre egenskapene fra hoved ikke overstyres. Dette lar deg sette opp dine felles egenskaper i hoved og bare endre hva som bør være annerledes. Ikke bare gjør dette arbeidet for farger, men du kan endre noe som eksisterer innenfor de ressurser mappene, slik som strenger, stiler , dimensjoner og heltall. Når det kombineres med kommenterte ressurs mapper, for eksempel verdier-xhdpi for høyere pikseltetthet enheter, vil du være i stand til fint kontrollere hva brukeren ser fra din app for å sikre at de har en best mulig opplevelse. Som en ekstra bonus, siden du har ulike applicationId verdier satt for hver av farge dimensjoner, kan du installere flere versjoner av samme app på en enhet. Gradle er et kraftig verktøy som ikke bare konstruerer APK, men lar deg ha finkornet kontroll over tilpassing bygger. I denne artikkelen har du lært hvordan du oppretter bygge varianter av søknaden din med ulike ressurser, slik at du enkelt kan produsere flere lignende apps på en brøkdel av tiden det vil ta å bygge opp hver for seg. Mens Gradle er fortsatt en ganske ny bygge systemet, har det allerede vist at det er et utrolig nyttig bygge system som hver Android utvikler bør være komfortabel med.
bygge node.
FlavorDimensions "nummer" , "farge"
flavorDimensions kø for å bare definere en dimensjon.
ProductFlavors {blue {applicationId "com.tutsplus.bluevariant" flavorDimension "farge"} green {applicationId "com.tutsplus.greenvariant" flavorDimension "farge" } ene {flavorDimension "nummer"} to {flavorDimension "nummer"}}
applicationId for å skille det fra den andre bygger. Siden alle programmer som du bygger vil ha minst én smaken fra hver dimensjon, trenger du bare å definere applicationId i hver node for en dimensjon.
3. Bruke prosjektstrukturen
du vil se hovedkatalogen. Det er der alt av Java ressurser kilde- og kjerne leve. Du kan legge til flere kataloger sammen med hoved å reflektere produktet smaker av apps for å legge til tilpassede ressurser for hver build variant.
. ≪? Xml version = "1.0" encoding = "UTF-8" >? ≪ resources > < farge name = "colorPrimary" > # 00FF00 < /farge > < /ressurser >
Konklusjon