android studio 多渠道打包,调试正式包,build.gradle解析

1,讲解build.gradle文件。1.1根目录Android

1.1.1defaultConfig是Android的根目录,,可以配置包名等信息,若AndroidMainfest.xml也配置了,以defaultConfig的为准。1.1.2signingConfigs是Android的根目录,可以配置签名,如下图:

调试时若想直接用正式的签名包可以在buildType里配置。

buildTypes {debug {signingConfig signingConfigs.release}release {minifyEnabled falseproguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’}}1.1.3多渠道打包,修改AndroidMainFest 的meta-data值。AndroidMainFest 配置如下:${Value} 是动态配置的。> <meta-data"channelValue"

build.gradle配置如下

productFlavors {huawei {minSdkVersion 14targetSdkVersion 21manifestPlaceholders =[Value: "huawei"]}xiaomi {minSdkVersion 14targetSdkVersion 21manifestPlaceholders =[Value: "xiaomi"]}}

代码中获取AndroidMainnifest Value的值

//获取meta字段public static String getMetaString(Context con,String name){ApplicationInfo ai = null;try {ai = con.getPackageManager().getApplicationInfo(con.getPackageName(), PackageManager.GET_META_DATA);} catch (PackageManager.NameNotFoundException e) {e.printStackTrace();}Bundle bundle = ai.metaData;return bundle.getString(name);}

打包时直接使用

最后贴上build.gradle文件。

apply plugin: ‘com.android.application’android {compileSdkVersion 21buildToolsVersion "21.1.2"defaultConfig {applicationId "caisheng.com.search"minSdkVersion 16targetSdkVersion 21versionCode 1versionName "1.0"}signingConfigs {//你自己的keystore信息release {keyAlias ‘aolaigo’keyPassword ‘123456’storeFile file(‘E:/test.jks’)storePassword ‘123456’}}lintOptions {checkReleaseBuilds false// Or, if you prefer, you can continue to check for errors in release builds,// but continue the build even when errors are found:abortOnError false}buildTypes {debug {signingConfig signingConfigs.release}release {minifyEnabled falseproguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’}}productFlavors {huawei {minSdkVersion 14targetSdkVersion 21manifestPlaceholders =[Value: "huawei"]}xiaomi {minSdkVersion 14targetSdkVersion 21manifestPlaceholders =[Value: "xiaomi"]}}}dependencies {compile fileTree(dir: ‘libs’, include: [‘*.jar’])// compile (name:’cai’,ext:’aar’) // compile project(‘:cai’) /* compile ‘com.facebook.fresco:fresco:0.6.0’ compile ‘com.android.support:appcompat-v7:22.2.0’ compile ‘com.github.liuguangqiang.swipeback:library:1.0.2@aar’ compile ‘com.sothree.slidinguppanel:library:3.1.1’ compile ‘me.dm7.barcodescanner:zbar:1.5’*/}

版权声明:本文为博主原创文章,未经博主允许不得转载。

当你能爱的时候就不要放弃爱

android studio 多渠道打包,调试正式包,build.gradle解析

相关文章:

你感兴趣的文章:

标签云: