前言

本文主要介绍使用android studio 进行多环境打包,且可以修改app名称,可在手机上同时安装多个环境的安装包。

1.app module中的build.gradle中添加buildTypes

备注:buildTypes是在android节点下

//只保留相关代码android {    signingConfigs {        config {            keyAlias '用户名'            keyPassword '密码'            storeFile file('你的keystore路径')            storePassword '密码'        }    }    applicationVariants.all { variant ->        variant.outputs.each { output ->            def outputFile = output.outputFile            //这里修改文件名           def fileName = "应用名${variant.buildType.name}.apk"            output.outputFile = new File(outputFile.parent, fileName)        }    }       buildTypes {        beta {//预发布环境            buildConfigField "String", "STRING_API_ENV", "\"1\""            applicationIdSuffix '.beta'//包名添加后缀.beta            debuggable true            signingConfig signingConfigs.config        }        debug {//测试环境            buildConfigField "String", "STRING_API_ENV", "\"2\""            applicationIdSuffix '.debug'//包名添加后缀.debug            signingConfig signingConfigs.config        }        release {//正式环境            buildConfigField "String", "STRING_API_ENV", "\"0\""            signingConfig signingConfigs.config            //正式环境相关配置可自己添加,只写出该功能所需代码        }    }}

2.在url类中获取1中buildConfigField的变量

如没有BuildConfig.STRING_API_ENV,先sync project

    private static String TEST_URL = "http://测试url";//测试环境    private static String RELEASE_URL = "http://正式url";//正式环境    private static String BETA_URL = "http://预发布url";//预发布环境    private static final String STRING_API_ENV = BuildConfig.STRING_API_ENV;    private static String BASE_URL = STRING_API_ENV.equals("0")            ? RELEASE_URL : (STRING_API_ENV.equals("1") ? BETA_URL : TEST_URL);    //实例url,换为自己的接口    public static String VERIFY = BASE_URL + "auth/send";

变量为0调用RELEASE_URL
变量为1调用BETA_URL
变量为0调用TEST_URL

3.在项目目录src下创建debug,beta文件夹

演示.png

建议切换到到project视图创建


project所在位置.png

分别在debug,beta文件夹下创建和main文件夹下层级一样的文件夹以及文件,如需修改debug,beta的应用图标,创建drawable相关文件,打包apk时会自动替换应用图标和应用名称。


debug下string.png
beta与debug相同,名字改为了“应用名预发布”。

结束

Build Variant.png

android studio的侧边Build Variant可切换环境。


右上角gradle.png

点击android studio 右上角gradle,可分别输出debug,beta,release的apk,也可点击assemble打包三个环境的apk。


apk路径.png
apk在app-build-outputs-apk中。
因包名不同,所以三个环境的apk可安装在同一部手机上,且应用名也是不同的,如设置了icon,应用图标也是不同的。

更多相关文章

  1. android:sharedUserId权限问题
  2. Android(安卓)中各种权限深入体验及详解
  3. Android引路蜂地图开发示例:第一个地图应用
  4. Android应用开发提高系列(5)——Android动态加载(下)——加载已安装A
  5. Appium环境搭建
  6. 配置android jni开发环境
  7. Android技术框架概要
  8. 第一章 andriod studio 安装与环境搭建
  9. Android各大发布市场

随机推荐

  1. 在Android(安卓)JNI环境下使用C++ Lambda
  2. Android日志系统Logcat源代码简要分析
  3. Android(安卓)自定义AlertDialog提交表单
  4. Android开发中Handler的经典总结
  5. Android线程间通信机制
  6. android 深入研究ratingbar自定义
  7. 【ALearning】第一章 Android概述
  8. 6个必看的Android网站
  9. Kernel.org 被黑,获取 Android(安卓)源码
  10. Android(安卓)安全机制(1)uid 、 gid 与 pi