Sök…


Anmärkningar

Vad är Android-gradle

android-gradle är en gradle plugin som officiellt upprätthålls av Google Tools utvecklargrupp och är det officiella build-verktyget sedan tillkännagivandet den 16 maj 2013 på Google I / O.

Lär dig det grundläggande genom att läsa Konfigurera din byggnad med Gradle .

Huvuddrag

Huvudfunktionerna i Android Gradle Plugin är:

Översikt

  1. Ladda ner och installera Android Studio
  2. öppna det och skapa ett nytt projekt med alla standardinställningar

I teorin kan du installera gradle direkt, bygga konfigurationsfiler och katalogstruktur själv. I praktiken gör ingen det.

Projektstruktur

En projektmappstruktur ser normalt ut så här:

Android Project-mappstruktur

android-gradle Plugin

Ett gradprojekt delas vanligtvis upp i delprojekt eller moduler som var och en innehåller ett dedicerat build-script.

Pluginberoendet deklareras vanligtvis i filen build.gradle på huvud / build.gradle :

buildscript {
    // maven repositories for dependencies
    repositories {
        jcenter()
    }
    // build script dependencies
    dependencies {
        // this is the dependency to the android build tools
        classpath 'com.android.tools.build:gradle:2.1.2'
    }
}

allprojects {
    // maven repositories for all sub-project / modules
    repositories {
        jcenter()
    }
}

I det här exemplet är android-gradle 2.1.2 som du kan se från den här raden:

classpath 'com.android.tools.build:gradle:2.1.2'

moduler

Projektet är indelat i moduler som vardera innehåller ett dedicerat build.gradle skript. Filen settings.gradle visar dessa moduler:

include ':app'

Kolon : används något som en mappavgränsare.

För att använda plugin måste den appliceras högst upp i build.gradle filen i varje modul ( app i exemplet).

För en Android-applikation:

apply plugin: 'com.android.application'

För ett Android-bibliotek:

apply plugin: 'com.android.library'

Och sedan konfigureras i dess android tagg:

android {
  // gradle-android plugin configuration
}

Grundläggande Android-applikationskonfiguration

build.gradle genereras av Android Studio för en applikation ser ut så här:

apply plugin: 'com.android.application'

android {
    // setup which version of the SDK to build against and
    // with what version of the build tools
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    // default app configurations
    defaultConfig {
        // this is your app unique ID
        applicationId "com.example.myapp"
        
        // devices with lower SDK version can't install the app
        minSdkVersion 14
        // target SDK version, should be the last available one and
        // match the compile one
        targetSdkVersion 23
        
        // integer and string version of your app
        versionCode 1
        versionName "1.0"
    }
    
    // default build types are "debug" and "release"
    buildTypes {
        release {
            // enable / disable proguard optimization
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

// app dependencies
dependencies {
    // any jar file in the libs folder
    compile fileTree(dir: 'libs', include: ['*.jar'])
    // test dependency
    testCompile 'junit:junit:4.12'
    // runtime dependency on the support library
    compile 'com.android.support:appcompat-v7:24.0.0'
}

Konfigurera din build med Gradle lär dig mer avancerade inställningar och alternativ för Android Gradle Plugin och gå djupare i innebörden av denna inställning.

defaultConfig kallas så, eftersom det kan åsidosättas med produktsmak .

Med buildTypes taggen kan du ställa in hur du bygger din app som möjliggör optimering (som proguard). Du kan lära dig mer om att läsa Build Types . Det kan också användas för att ställa in signering av din app.

Du bör också lära dig mer om hur du förklarar beroende . Som du ser dependencies taggen är utanför android en: Detta innebär att det inte definieras av Android plugin men det är standard gradle .


Gradle Wrapper

Android Studio kommer också, som standard, att installera en gradle wrapper . Detta är ett verktyg som du kan köra direkt från kommandoraden och det kommer att ladda ner en lokal specifik version av graden första gången du kör den.

För att starta kompilera appen kan du sedan starta gradle wrapper

Linux / Mac:

./gradlew assemble

Windows:

gradlew assemble

Skriptet startar omslaget, som finns i en gradle i rotkatalogen för ditt projekt:

  • gradle-wrapper.jar : kodens kod för att ladda ner gradle och köra den
  • gradle-wrapper.properties definierar vilken gradversion wrapparen ska ladda ner

Externa länkar:

Inledande installation med Android Studio

För att konfigurera för att använda Android Gradle Plugin behöver du många saker:

  • java
  • gradle
  • Android-projektmappstrukturen
  • ett Android-manifest
  • initial inställning av plugin

Det enklaste sättet att få dem alla är att följa dessa steg:

  1. Ladda och installera Java OpenJDK version 6 eller 7 (du kan använda 8 med ytterligare inställningar för gradle plugin)
  2. Ladda ner och installera Android Studio
  3. Skapa ett nytt projekt (om du behöver hjälp se Skapa ett nytt projekt )

Mer information finns i avsnittet Kommentarer.

Android Plugin för Gradle

Som beskrivs i kommentarerna använder Android build-systemet Android Plugin för Gradle för att stödja byggandet av Android-applikationer med Gradle.

Du kan ange Android Plugin för Gradle version i översta nivån build.gradle fil. Pluginversionen gäller alla moduler som är inbyggda i det Android Studio-projektet.

buildscript {
  ...
  dependencies {
    classpath 'com.android.tools.build:gradle:2.2.0'
  }
}

Gradle wrapper

Som beskrivs i kommentarsavsnittet kan du specificera Gradle-versionen som används av varje projekt som redigerar Gradle-distributionsreferensen i gradle/wrapper/gradle-wrapper.properties .

Till exempel:

...
distributionUrl = https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
...


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow