Android studio Gradle 構建

軟件需求:html

  1. 安裝gradle
    • 下載gradle壓縮包,解壓到本地。
    • 設置環境變量,新建系統變量,GRADLE_HOME:E:\installspace\gradle-1.11
    • path中增長;%GRADLE_HOME%\bin
    • 測試是否成功,命令:gradle -v
  2. 安裝Android studio(若是用Android studio)

建立項目android

  1. File-New Project
  2. 在Application name field輸入BuildSystemExamplewindows

  3. 保持默認,一直next直到finish。

項目結構 Android studio 項目包含一個默認的 app moduleapp

Component測試

Locationgradle

Source filesui

app/src/main/java/<package>/this

Resource filesspa

app/src/main/res/

Manifest file

app/src/main/AndroidManifest.xml

Build file

app/build.gradle

新增library modile

  1. 點擊File——New Module
  2. 在window窗口中選擇 Android Library,而後next 3.保持默認不變,一直next,在Activity Name field 輸入LibActivity1,而後finish。

這個項目包含兩個modules,每一個module都含有一個Activity。

從一個library module打開Activity 在這個例子中,在app module中的MainActivity將打開lib module的LibActivity1'

  1. 打開愛app module的MainActivity,找到app/src/main/res/layout/activity_main.xml,對文件中的代碼進行替換,以下

     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.buildsystemexample.app.MainActivity">
    
        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/button1"
            android:onClick="onButton1Clicked"/>
    
    </LinearLayout>
  2. 在這個文件中找到android:text="@string/button1",而後快捷鍵 Alt+Enter.,根據提示,在string resource 增長value "Open LibActivity1"。

  3. 一樣找到android:onClick="onButton1Clicked",快捷鍵 Alt+Enter.,根據提示,在MainActivity增長onButton1Clicked method.

  4. 將如下代碼進行copy到onButton1Clicked method 。
    public void onButton1Clicked(View view) {
        Intent intent = new Intent(this, LibActivity1.class);
        startActivity(intent);
     }
  5. 快捷鍵 Alt+Enter.,根據提示,對各個錯誤點進行import。

在libray module中增長dependency

  • 打開app/build.gradle,增長以下依賴。
    ...
    dependencies {
        ...
        compile project(":lib")
    }

構建項目

點擊build--Make Project

能夠經過查看在windows 窗口的右邊部分的Gradle Console,查看是否成功。

若是想查看可用的build tasks,能夠點擊在IDE 有窗口的Gradle,雙擊任意一個build task就能夠運行。 在app/build/apk會生成apk。

命令行 Gradle構建

On Windows

> gradlew.bat assembleDebug

On Mac OS and Linux platforms, type these commands:

$ chmod +x gradlew
$ ./gradlew assembleDebug

查看一系列的build tasks,命令以下

$ ./gradlew tasks

Build release version

  • 在IDE的右側,點擊Gradle,展開BuildSystemExample.而後在展開:app,雙擊assembleRelease。

 

配置Build

基礎結構

 

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
  signingConfigs {//對apk進行簽名
        release {
            storeFile file("myreleasekey.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    buildTypes {//混淆代碼,proguard-android.txt是Android sdk自帶的,proguard-rules.txt是新增的
        release {
            runProguard true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), \
            'proguard-rules.txt'

             signingConfig signingConfigs.release//簽名配置
        }

    }
}

dependencies {'''聲明dependencies'''的3種方式
    // Module dependency
    compile project(":lib")
 
    // Remote binary dependency
    compile 'com.android.support:appcompat-v7:19.0.1'

    // Local binary dependency
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

參考資料:http://developer.android.com/sdk/installing/studio-build.html#configBuild

相關文章
相關標籤/搜索