Android studio Gradle相关问题

问题:切换build模式为release显示编译不通过,提示如下:

the apk for your currently selected variant is not signed

解决:

在创建gradle时,在build.gradle文件内的buildTypes里面需要配置:

debug:signingConfig signingConfigs.debug
release:signingConfig signingConfigs.release

问题:如何创建多个不同版本如debug、release等

解决:

    通过设置:
    buildTypes {
      release {
        minifyEnabled false
        signingConfig signingConfigs.release
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }

    debug {
        minifyEnabled false
        signingConfig signingConfigs.debug
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
    //继承自debug的设置
    staging.initWith(buildTypes.debug)
    staging {
        applicationIdSuffix ".staging"
        versionNameSuffix "-staging"
        debuggable = false
    }
}

这时就会在右下角出现下拉的三个选项,分别为debug、release、staging

问题:如何设置自动签名信息

解决:

    通过设置:
    signingConfigs {
    debug {
        storeFile file(STORE_File_DEBUG)
        storePassword STORE_PASSWORD
        keyAlias KEY_ALIAS
        keyPassword KEY_PASSWORD
    }
    release {
        storeFile file(STORE_File)
        storePassword STORE_PASSWORD
        keyAlias KEY_ALIAS
        keyPassword KEY_PASSWORD
    }
    staging {
        storeFile file(STORE_File_DEBUG)
        storePassword STORE_PASSWORD
        keyAlias KEY_ALIAS
        keyPassword KEY_PASSWORD
    }
}

里面的参数是在gradle.properties文件内进行的配置,如下:

STORE_File=E:/works/test/FirstTestAppKeyStore/FirstTestApp.jks//签名文件的路径
STORE_File_DEBUG=E:/works/test/FirstTestAppKeyStore/FirstTestAppDebug.jks//签名文件的路径
STORE_PASSWORD=123456//设置密码
KEY_PASSWORD=123456//key密码
KEY_ALIAS=key0//key的值

问题:如何将build.gradle内的相关参数统一管理如下图:

Android studio Gradle相关问题_第1张图片
参数统一管理.png

解决:

在根目录下创建一个config.gradle文件,用于保存所有相关的配置,如图:

Android studio Gradle相关问题_第2张图片
配置文件.png

关键的一点:需要将这个文件添加进项目的build.gradle文件中,这样才能使用,过程是:在项目的build.gradle文件中添加

apply(from: "config.gradle")
或者:apply from: "config.gradle"//这样就可以全局使用

问题:在点击运行的时候提示如下:

Android studio Gradle相关问题_第3张图片
异常.png

解决:如图

Android studio Gradle相关问题_第4张图片
setting.png

将箭头指向的地方取消选中即可

问题:如何对debug、release等不同环境的包进行不同的设置,比如设置APP名字,debug为测试版,release为正式版

解决:
在app文件夹下创建debug、release文件夹,分别对应debug版本和release版本,在文件内部使用和main文件下相同的文件进行配置,经文件内的参数修改就可以使用到不同的版本APP上,如图:

Android studio Gradle相关问题_第5张图片
设置.png

如图的功能只是,在debug版本中将APP名字修改了,其他不变,如果想修改其他属性,可以在对应的文件里进行复制、修改

相关配置可以参考:GradleLearn
推荐文章:
http://www.jianshu.com/p/49c7de5bb029
http://www.codeceo.com/article/tag/gradle

你可能感兴趣的:(Android studio Gradle相关问题)