在Android打包中区分测试和正式环境浅析
前言
本文主要介绍了关于Android打包中区分测试和正式环境的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:
APK打包正式环境和测试环境注意
最近在项目打包中,遇到一个问题,每次打包都要区分正式发布包和测试版本的包,主要是修改一下配置
public static final boolean EXTERNAL_RELEASE = true;
当变量为true的时候,就是正式包,反之就是测试包。每次上线的时候我就提醒自己要小心,千万不能出错了,然而终于湿脚了,一个渠道打包的时候,给忘记修改过来了,导致要罚钱了………
然而人就是人,不能每次都会记得,这时候要想一种办法,能在打包的过程的中,根据你是release版本还是debug版本,来决定正式包还是测试包。
首先要在你的build.gradle文件中添加如下配置
buildTypes { release { minifyEnabled true proguardFiles 'proguard.txt' buildConfigField "Boolean", "ENVIRONMENT", "true" } debug { buildConfigField "Boolean", "ENVIRONMENT", "false" } }
然后再给你需要的控制是否正式和测试包的变量赋值
public static final boolean EXTERNAL_RELEASE = BuildConfig.ENVIRONMENT;
这样只要你在打包的时候选择
这样就能动态的去区分正式的还是测试的包的了
有关的build.gradle配置可以参考:http://www.jb51.net/article/125602.htm
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
Android笔记之:App自动化之使用Ant编译项目多渠道打包的使用详解
随着工程越来越复杂,项目越来越多,以及平台的迁移(我最近就迁了2回),还有各大市场的发布,自动化编译android项目的需求越来越强烈,后面如果考虑做持续集成的话,会更加强烈. 经过不断的尝试,在ubuntu环境下,以花界为例,我将一步一步演示如何使用命令行,使用ant编译android项目,打包多渠道APK. 要点: (1). 编译android的命令使用 (2). ant基本应用 (3). 多项目如何编译(包含android library) (4). 如
-
Android开发apk反编译和二次打包教程
作为Android开发者,工作中少不了要反编译别人的apk,当然主要目的还是为了学习到更多,取彼之长,补己之短.今天就来总结一下Android反编译和二次打包的一些知识.首先声明本文的目的是为了通过例子讲解反编译和二次打包的原理和方法,继而作为后续讲解防止二次打包和App安全的依据,并不是鼓励大家去重新打包别人的App,盗取他人劳动成果. 本文首先介绍几种Android反编译工具的使用,然后实现在不需要知道源代码的情况下,仅通过修改反编译得到的smali文件实现修改apk逻辑功能的目的. And
-
ANDROID应用程序的混淆打包分享
android应用程序的混淆打包1 . 在工程文件project.properties中加入下proguard.config=proguard.cfg , 如下所示:target=android-8 proguard.config=proguard.cfg Eclipse会通过此配置在工程目录生成proguard.cfg文件 2 . 生成keystore (如已有可直接利用) 按照下面的命令行 在D:\Program Files\Java\jdk1.6.0_07\bin>目录下,输入keytoo
-
怎么发布打包并发布自己的Android应用(APP)
第一步,在Eclipse中选择需要打包的项目,然后右键--选择Export,会弹出一个打包的提示框,如下图所示. 按Next之后,会继续出现一个提示框,这里你可以选择自己需要打包的项目(默认是刚才选中的)如下图: 按Next之后,会弹出一个关于"Keystore"的提示,选择"Create new Keystore",并浏览.选择签名文件要保存的路径, (关于Keystore的原理.作用等这里暂时不细说,请大家发布前务必保存好该签名文件,非常重要的.) 如下图所示:
-
Android aapt自动打包工具详细介绍
Android aapt自动打包工具 概念 在Android.mk中有LOCAL_AAPT_FLAGS配置项,在gradle中也有aaptOptions,那么aapt到底是干什么的呢? aapt即Android Asset Packaging Tool(Android 打包工具),在SDK的build-tools目录下.我们可以查 看,创建, 更新ZIP格式的文档附件(zip, jar, apk).也可将资源文件编译成二进制文件,尽管你可能没有直接使用过aapt工具,但是build script
-
在Android打包中区分测试和正式环境浅析
前言 本文主要介绍了关于Android打包中区分测试和正式环境的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: APK打包正式环境和测试环境注意 最近在项目打包中,遇到一个问题,每次打包都要区分正式发布包和测试版本的包,主要是修改一下配置 public static final boolean EXTERNAL_RELEASE = true; 当变量为true的时候,就是正式包,反之就是测试包.每次上线的时候我就提醒自己要小心,千万不能出错了,然而终于湿脚了,一个渠道打
-
Vue项目判断开发、测试、正式环境过程
目录 方法一 方法二 1.在build文件夹中创建test.js文件 2.修改config文件夹中的prod.env.js文件 3.在package.json文件中添加npm run test命令 4.在项目代码中判断环境 方法一 最简单的方法:通过判断location.href来判断环境 function env() { if (process.env.NODE_ENV === "development") return "development";
-
Android Studio中配置OpenCV库开发环境的教程
1.下载 进入官网(http://opencv.org/)下载OpenCV4Android并解压.目录结构如下图所示. 其中,sdk目录即是我们开发opencv所需要的类库:samples目录中存放着若干opencv应用示例(包括人脸检测等),可为我们进行android下的opencv开发提供参考:doc目录为opencv类库的使用说明及api文档等:而apk目录则存放着对应于各内核版本的OpenCV_2.4.3.2_Manager_2.4应用安装包.此应用用来管理手机设备中的opencv类库,
-
vue如何自动化打包测试环境和正式环境的dist/test文件
使用vue现在已经差不多2年了,想起来两年前的一次和某阿里处理的技术大牛(当时我们的技术总监)一起开发一个SPA项目的时候被硬着头皮去解决的一个难题,因为技术老大是阿里出身的,所以很多东西都是比较倾向于自动化,从项目ui设计到项目管理,到打包测试,到发布全部都要求我们要实现自动化,尽可能的减少手动操作. 当时技术大佬要求的事在jenkins进行一键打包,就是他点击不同的按钮在同一套代码上面分别打包测试环境运行的包和正式环境运行的包,刚刚接触vue的我摸不着头脑,老大给了我一天时间研究这个玩意,没
-
Android Studio中一套代码多渠道打包的实现方法
一套代码达到以下效果: 打包不同applicationId能同时安装在同一手机上 不同logo,app名称, 不同第三方SDK接入配置(例如微信分享appid,激光推送appkey) 能区分debug和release配置 使用到的功能:productFlavor和buildTypes 原理:优先级buildTypes大于productFlavor 示例:一套代码为两家银行打包apk 1. 修改build.gradle.buildTypes保持默认debug和release两种设置即可,andro
-
Android studio导出APP测试包和构建正式签名包
目录 一.导出APP测试包 二.构建正式签名包 一.导出APP测试包 1.打开你要导出的项目,或者是新建一个项目 2.单击菜单栏的Build -> Build Bundle(s) / APK(s) -> Build APK(s),稍等一段时间,等待系统构建. 3.构建完成后会在屏幕的右下角提示: 4.定位到构建好的app-debug.apk有两种方法: 方法一:直接点击locate方法二: (1)选择project (2)依次点击app -> build ->outputs -&g
-
Android编程中activity的完整生命周期实例详解
本文实例分析了Android编程中activity的完整生命周期.分享给大家供大家参考,具体如下: android中 activity有自己的生命周期,对这些知识的学习可以帮助我们在今后写程序的时候,更好的理解其中遇到的一些错误.这篇文章很长,希望不要耽误大家的时间- 今天不会涉及太多关于activity栈的东西,主要说activity自身的生命周期 区分几个概念 1 Activity 官方解释为 "An Activity is an application component that pro
-
在Android开发中替换资源图片不起作用的解决方法
现象 在android开发中,经常会需要替换res\drawable中的图片,打开res\layout下的文件预览布局页面发现图片已经被替换,但在模拟器或者真实机器上运行时发现该图片并没有被替换,还是使用的是原来的资源图片. 原因 在开发过程中,由于使用模拟器测试了程序,在首次运行后会将res文件夹下的图片资源文件(如drawable-hdpi.drawable-ldpi和drawable-mdpi)拷贝到bin文件夹下.在替换资源图片后,eclipse并不清楚是否有图片改变,所以会使用原来bi
-
详解MVP模式在Android开发中的应用
一.MVP介绍 随着UI创建技术的功能日益增强,UI层也履行着越来越多的职责.为了更好地细分视图(View)与模型(Model)的功能,让View专注于处理数据的可视化以及与用户的交互,同时让Model只关系数据的处理,基于MVC概念的MVP(Model-View-Presenter)模式应运而生. 在MVP模式里通常包含4个要素: (1)View:负责绘制UI元素.与用户进行交互(在Android中体现为Activity); (2)View interface:需要View实现的接口,Vie
-
RN在Android打包发布App(详解)
1-:生成一个签名密钥 你可以用keytool命令生成一个私有密钥.在Windows上keytool命令放在JDK的bin目录中(比如C:\Program Files\Java\jdkx.x.x_x\bin),你可能需要在命令行中先进入那个目录才能执行此命令.在mac上,直接进入项目根目录输入一下命令: $ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2
随机推荐
- perl模块Data::Dumper应用一例分享
- Android中Glide加载库的图片缓存配置究极指南
- Bootstrap 手风琴菜单的实现代码
- javascript中this用法实例详解
- BootStrap的alert提示框的关闭后再显示怎么解决
- Web 开发中Ajax的Session 超时处理方法
- 原生js仿jquery实现对Ajax的封装
- asp.net中简体转繁体实现代码
- PHP中的错误处理、异常处理机制分析
- Go语言操作mysql数据库简单例子
- Android 开发照相功能实例详解
- C语言小程序 数组操作示例代码
- Mysql子查询IN中使用LIMIT应用示例
- Python批量查询域名是否被注册过
- Lua中ipair和pair的区别
- IIS重定向使用图文教程
- 主板相关的技术名词解释 小知识
- Android 使用jarsigner给apk签名的方法详细介绍
- Android中的Intent Filter匹配规则简介
- 倾诉天空为您免费提供100MWEB空间