配置统一的build.gradle

1、写一个.gradle配置文件

在Progject里面新建一个config.gradle文件,然后里面添加工程需要的配置。如图所示:

2、在Project的build.gradle里面添加配置

9BFB2262-B39F-4065-B8E4-45577E3E5D81.png

3、在module的build.gradle里面引用即可

def config=rootProject.ext.android//配置
def librarys=rootProject.ext.dependencies//依赖
android {
    compileSdkVersion config.compileSdkVersion
    buildToolsVersion config.buildToolsVersion
    defaultConfig {
        applicationId "cn.project.demo.com"
        minSdkVersion config.minSdkVersion
        targetSdkVersion config.targetSdkVersion
        versionCode config.versionCode
        versionName config.versionName
    }
    //签名--->微信分享、登录,就不用打包了。直接运行即可。
    signingConfigs{
        //这里debug和release其实是一样的
//        debug{
//            storeFile file("签名文件路径")
//            storePassword "签名文件存储密码"
//            keyAlias "签名文件标识"
//            keyPassword "签名文件密码"
//        }
//        release{
//            storeFile file("签名文件路径")
//            storePassword "签名文件存储密码"
//            keyAlias "签名文件标识"
//            keyPassword "签名文件密码"
//        }
    }

    buildTypes {
        debug{
            applicationIdSuffix ".test"
            zipAlignEnabled false
            minifyEnabled false
            buildConfigField("boolean","LOG_DEBUG","true")
            buildConfigField("String","BASE_URL",'"debugurl"')
            buildConfigField("String","H5_URL",'"debugurl"')
            resValue("string","app_name","ProjectDemoDebug")
//            signingConfig signingConfigs.debug
        }
        release {
            zipAlignEnabled true
            minifyEnabled true
            buildConfigField("boolean","LOG_DEBUG","false")
            buildConfigField("String","BASE_URL",'"releaseurl"')
            buildConfigField("String","H5_URL",'"releaseurl"')
            resValue("string","app_name","ProjectDemoRelease")
//            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile librarys.supportV7
    compile librarys.supportV4
    compile librarys.constraintlayout
    compile librarys.design
    compile librarys.recyclerview
    compile librarys.stetho
    compile librarys.stethoRealm
    compile librarys.gson
}

好了,具体就是这三个步骤,以后新建工程都可以直接使用这样的配置,就不需要去找相应的库了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Golang语言社区

Golang:使用 httprouter 构建 API 服务器

我 10 个月前开始成为一名 Gopher,没有回头。像许多其他 gopher 一样,我很快发现简单的语言特性对于快速构建快速、可扩展的软件非常有用。当我刚开始...

63314
来自专栏Android常用基础

应用自动更新封装-Android

应用更新应该是现在每个应用必备的一个功能。正是通过不断的更新,不断的调优,才使我们的应用更完善。当然在各大应用市场中,它们已经帮我们实现了这项功能,但是有一个问...

1011
来自专栏北京马哥教育

Linux内核源代码情景分析-访问权限与文件安全性

在Linux内核源代码情景分析-从路径名到目标节点,一文中path_walk代码中,err = permission(inode, MAY_EXEC)当前...

3196
来自专栏iOS技术

iOS架构:MVVM设计模式+RAC响应式编程

每次做完项目过后,都会被自己庞大的ViewController代码吓坏,不管是什么网络请求、networking data process、跳转交互逻辑统统往V...

5999
来自专栏二次元

Linux下安装PHP环境

1051
来自专栏吴小龙同學

Gradle for Android(二)全局设置、自定义BuildConfig、混淆

系列博客 Gradle for Android(一)基本配置、依赖管理 Gradle for Android(三)多渠道打包、配置签名信息 全局设置 根目...

3207
来自专栏向治洪

android优化之省电

Android程序中耗电最多的地方在以下几个方面 : 1、 大数据量的传输。 2、 不停的在网络间切换。 3、 解析大量的文本数据。 那么我们怎么样来改...

18110
来自专栏雨过天晴

Android Studio 多渠道打

1473
来自专栏Android源码框架分析

十分钟了解Android触摸事件原理(InputManagerService)

从手指接触屏幕到MotionEvent被传送到Activity或者View,中间究竟经历了什么?Android中触摸事件到底是怎么来的呢?源头是哪呢?本文就直观...

2374
来自专栏xingoo, 一个梦想做发明家的程序员

套接字选项

选项影响套接字操作,如 封包路由,OOB数据传输,获取和设置套接字选项分别是 getsockopt  setsockopt 用法如下: int getsocko...

1806

扫码关注云+社区