android 利用gradle构建工程

本文介绍如何使用 Gradle 构建 Android 应用及多渠道包,包括环境配置、签名设置等关键步骤。

使用gradle,构建android开发包,以及多渠道包,是非常方便的过程,可以提高我们的效率。

1:下载gradle 2.5 

配置环境变量

test:


创建build.gradle



可以看到多了图中箭头标识的文件,右键刷新工程,工程文件更新如下,多出如下几个文件:



用原始gradle,如果仅仅只是需要打测试包的话,则在cmd下cd到当前工程的目录下

输入“gradle clean”命令,显示如下说明clean成功,需要一段时间,
此处会报错,解决的方法是重新下载gradle1.10

之后重新走到此处。
构建
gradle build


刷新工程:

打开apk文件夹,会发现下面有两个apk文件,第一个是debug模式下未对齐的apk,第二个是relase模式下未签名的apk,这两个apk都不是打正式包我们需要的,因为还没有加签名。下面会介绍加签名的包怎么打出来。

构建有签名的正式包,先把项目的keystore的文件放到根目录下。

此处需要生成好volley.keystore

步骤是在输出export 时,


这样会生成volley.keystore

之后

打开build.gradle文件进行配置,在android下面增加signingConfigs 和buildTypes。将其中的keystore相关信息替换成你自己的。

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.+'
    }
}
apply plugin: 'android'


dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
}


android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"


    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }


    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }


        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')


        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }

//自己添加的签名后的apk

  signingConfigs {
    myConfig {
        storeFile file("volley.keystore")
        storePassword ("12345678")
        keyAlias ("我的volley")
        keyPassword ("12345678")
    }
}
   buildTypes{
       release {
    signingConfig  signingConfigs.myConfig
        } 
    }
}

再次执行clean和build的命令再次打包,如果成功,刷新工程后会在apk文件夹下出现四个apk文件,如下


最后一个为release版本的进行过zipalign对齐的apk,也就是我们的正式包。这个时候可能会有个问题,我们的签名信息需要保密,不能明文展示,这个时候就需要对签名信息进行处理了。下面会介绍怎么对签名信息进行保密的处理。


修改mainfest.xml

添加

        <meta-data
            android:name="UMENG_APPKEY"
            android:value="547c118efd98c5cda30009ee" />
        <meta-data
            android:name="UMENG_CHANNEL"
            android:value="volley" />

在build.gradle中,添加

 productFlavors {  

       umeng {  
           manifestPlaceholders = [ CHANNEL_NAME:"UMENG" ]  
        }  
 

之后 gradle clean gradle build后,就可以生成有盟的渠道包了


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值