首页 > 代码库 > Android studio Gradle 构建

Android studio Gradle 构建

软件需求:

  1. 安装gradle
    • 下载gradle压缩包,解压到本地。
    • 设置环境变量,新建系统变量,GRADLE_HOME:E:\installspace\gradle-1.11
    • path中增加;%GRADLE_HOME%\bin
    • 测试是否成功,命令:gradle -v
  2. 安装Android studio(如果用Android studio)
    • 下载:http://developer.android.com/sdk/installing/studio.html,运行安装即可

创建项目

  1. File-New Project
  2. 在Application name field输入BuildSystemExample

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

项目结构 Android studio 项目包含一个默认的 app module

Component

Location

Source files

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

Resource files

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