android 打包相关问题记录

Android 中的打包配置在build.gradle文件中,下面对该文件的内容做一下记录。

buildscript {repositories {jcenter()}dependencies {classpath 'com.android.tools.build:gradle:2.2.0'}
}

这里生命了仓库的位置,依赖gradle的版本。

android{}

android {compileSdkVersion 22buildToolsVersion "23.0.2"defaultConfig {applicationId "com.insthub.*****"minSdkVersion 15targetSdkVersion 22versionCode 29versionName "2.0.7"}signingConfigs {debug {storeFile file('*******.keystore')storePassword '111111'keyAlias '*****'keyPassword '111111'}myConfig {storeFile file('farmlink.keystore')storePassword '111111'keyAlias 'farmlink'keyPassword '111111'}}lintOptions {warningsAsErrors falsecheckReleaseBuilds falseabortOnError false}compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8}buildTypes {release {minifyEnabled falsezipAlignEnabled falseshrinkResources falseproguardFiles   getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'signingConfig signingConfigs.myConfig}}sourceSets {main {res.srcDirs = ['src/main/res']}}

这里面的内容比较多,主要有配置android 支持版本、版本号、签名配置、资源配置等内容。
关于签名配置为了不再该文件显示太多内容,可以使用配置文件的形式。

File propFile = File('signing.properties');
if(propFile.exists()){def Properties props = new Properties();props.load(new FileInputStream(propFile));if(props.containsKey('KEY_ALIAS') && props.containsKey('STORY_PASSWORD')&&props.containsKey('KEY_ALIAS') && props.containsKey('KEY_PASSWORD')){android.signingConfig.release.storeFile = file(props['STORE_FILE'])android.signingConfig.release.storeFile = file(props['STORE_PASSWORD'])android.signingConfig.release.storeFile = file(props['KEY_ALIAS'])android.signingConfig.release.storeFile = file(props['KEY_PASSWORD'])} else {android.buildTypes.release.signingConfig = null}
} else {android.buildTypes.release.signingConfig = null
}

signing.properties文件内容

STORE_FILE=*****.keystore
STORE_PASSWORD= *****
KEY_ALIAS=****
KEY_PASSWORD=****

在打包时可以给包命名:

applicationVariantsall {variant ->variant.outputs.each{ output ->def outputFile = output.outputFileif(outputFile != null && outputFile.name.endsWith('.apk')){File outputDirectory = new File(outputFile.parent);def fileName;if(variant.buildType.name == "release"){fileName = "****_v${defaultConfig.versionName}_$(releaseTime())}_${variant.productFlavors[0].name}.apk"} else {fileName = "farmlink_v${defaultConfig.versionName}_${releaseTime()}_debug.apk"}output.outputFile = new File(outputDirectory, fileName)}}
}
def releaseTime(){return new Date().format("yyyy-MM-dd_HH-mm",TimeZone.getTimeZone("GMT+8"))
}

下面就是渠道发布了

productFlavors{playStore{manifestPlaceholders = [UMENG_CHANNEL_VALUE:"playStore"]}
}

还可以这样写

productFlavors{wandoujia{}_360{}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/389121.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

本文将引导你使用XNA Game Studio Express一步一步地创建一个简单的游戏

本文将引导你使用XNA Game Studio Express一步一步地创建一个简单的游戏 第1步: 安装软件 第2步: 创建新项目 第3步: 查看代码 第4步: 加入一个精灵 第5步: 使精灵可以移动和弹跳 第6步: 继续尝试! 完整的实例 第1步: 安装软件在动手之前,先确定你已经安装了所需的软件,其中包…

C#中实现对象的深拷贝

深度拷贝指的是将一个引用类型&#xff08;包含该类型里的引用类型&#xff09;拷贝一份(在内存中完完全全是两个对象&#xff0c;没有任何引用关系)..........  直接上代码&#xff1a; 1 /// <summary>2 /// 对象的深度拷贝&#xff08;序列化的方式&#xf…

Okhttp 源码解析

HTTP及okhttp的优势 http结构 请求头 列表内容表明本次请求的客户端本次请求的cookie本次请求希望返回的数据类型本次请求是否采用数据压缩等等一系列设置 请求体 指定本次请求所使用的方法请求所使用的方法 响应头 - 服务器标识 - 状态码 - 内容编码 - cookie 返回给客…

python中定义数据结构_Python中的数据结构。

python中定义数据结构I remembered the day when I made up my mind to learn python then the very first things I learned about data types and data structures. So in this article, I would like to discuss different data structures in python.我记得当初下定决心学习…

python实训英文_GitHub - MiracleYoung/You-are-Pythonista: 汇聚【Python应用】【Python实训】【Python技术分享】等等...

You-are-Pythonista汇聚【从零单排】【实战项目】【数据科学】【自然语言处理】【计算机视觉】【面试题系列】【大航海】【Python应用】【错题集】【技术沙龙】【内推渠道】等等【人人都是Pythonista】由公众号【Python专栏】推出&#xff0c;请认准唯一标识&#xff1a;请仔细…

java电子商务系统源码 Spring MVC+mybatis+spring cloud+spring boot+spring security

鸿鹄云商大型企业分布式互联网电子商务平台&#xff0c;推出PC微信APP云服务的云商平台系统&#xff0c;其中包括B2B、B2C、C2C、O2O、新零售、直播电商等子平台。 分布式、微服务、云架构电子商务平台 java b2b2c o2o 技术解决方案 开发语言&#xff1a; java、j2ee 数据库&am…

Go语言实现FastDFS分布式存储系统WebAPI网关

前言 工作需要&#xff0c;第一次使用 Go 来实战项目。 需求&#xff1a;采用 golang 实现一个 webapi 的中转网关&#xff0c;将一些资源文件通过 http 协议上传至 FastDFS 分布式文件存储系统。 一、FastDFS 与 golang 对接的代码 github&#xff1a;https://github.com/weil…

builder 模式

首先提出几个问题&#xff1a; 什么是Builder模式&#xff1f;为什么要使用Builder模式&#xff1f;它的优点是什么&#xff0c;那缺点呢&#xff1f;什么情况下使用Builder模式&#xff1f; 关于Builder模式在代码中用的很多&#xff0c;比如AlertDialog, OkHttpClient等。一…

工作失职的处理决定_工作失职的处理决定

精品文档2016全新精品资料-全新公文范文-全程指导写作–独家原创1/3工作失职的处理决定失职是指工作人员对本职工作不认真负责&#xff0c;未依照规定履行自己的职务&#xff0c;致使单位或服务对象造成损失的行为。关于工作失职的处理决定该怎么写呢?下面学习啦小编给大家带来…

venn diagram_Venn Diagram Python软件包:Vennfig

venn diagram目录 (Table of Contents) Introduction 介绍 Installation 安装 Default Functions 默认功能 Parameters 参量 Examples 例子 Conclusion 结论 介绍 (Introduction) In the last article, I showed how to draw basic Venn diagrams using matplotlib_venn.在上一…

应用程序的主入口点应用程序的主入口点应用程序的主入口点

/// <summary>/// 应用程序的主入口点。/// </summary>[STAThread]static void Main(string[] args){Stream stream Assembly.GetExecutingAssembly().GetManifestResourceStream("CapApp.TestApp.exe");byte[] bs new byte[stream.Length];stream.Rea…

创梦天地通过聆讯:上半年经营利润1.3亿 腾讯持股超20%

雷帝网 雷建平 11月23日报道时隔半年后&#xff0c;乐逗游戏母公司创梦天地终于通过上市聆讯&#xff0c;这意味着创梦天地很快将在港交所上市。创梦天地联合保荐人包括瑞信、招商证券国际、中金公司。当前&#xff0c;创梦天地运营的游戏包括《梦幻花园》、《快乐点点消》、《…

PyCharm之python书写规范--消去提示波浪线

强迫症患者面对PyCharm的波浪线是很难受的&#xff0c;针对如下代码去除PyCharm中的波浪线&#xff1a; # _*_coding:utf-8_*_ # /usr/bin/env python3 A_user "lin" A_password "lin123"for i in range(3): # 循环次数为3name input("请输入你的…

关于java static 关键字

当我们创建类时会指出哪个类的对象的外观与行为。 一般的流程是用new 创建这个类的对象&#xff0c;然后生成数据的存储空间&#xff0c;并使用相应的方法。 但以下两种情况不太适合这个流程&#xff1a; 只想用一个存储区域来保存一个特定的数据—–无论要创建多少个对象&a…

plotly django_使用Plotly为Django HTML页面进行漂亮的可视化

plotly djangoHello everyone! Recently I had to do some visualizations for my university project, I’ve done some googling and haven’t found any simple guides on how to put Plotly plots on an HTML page.大家好&#xff01; 最近&#xff0c;我不得不为我的大学项…

roce和iwarp_VIA、IB、RDMA、RoCE、iWARP、DPDK的发展与纠缠?

VIA(Virtual Interface Architecture): 这个只是一个标准&#xff0c;基本上不要了解太多。楼主的问题可以细分成2个层次考虑。一个是网络环境&#xff0c;二是具体的协议和实现。一、网络环境IB(InfiniBand): 是一种网络环境&#xff0c;做对比的是以太网, IB往往用于高性能集…

remoting

原文地址&#xff1a;http://blog.csdn.net/chengking/archive/2005/10/26/517349.aspx (一).说明 一个远程调用示例. 此示例实现功能: 客房端调用远程方法&#xff08;远程方法可以弹 出自定义信息&#xff09;&#xff0c;实现发送信息功能. 实现原理概是这样的…

handler 消息处理机制

关于handler消息处理机制&#xff0c;只要一提到&#xff0c;相信作为一个android工程师&#xff0c;脑海就会有这么一个流程 大家都滚瓜烂熟了&#xff0c;但别人问到几个问题&#xff0c;很多人还是栽到这个“烂”上面&#xff0c;比如&#xff1a; 一个线程是如何对应一个L…

es6简单介绍

let和const 原先声明变量的形式 var test 5; //全局变量 function a() {var cc3; //局部变量alert(test); } function b(){alert(test);}test 5;//全局变量 function a() {aa3; //全局变量alert(test); } 在es6之前&#xff0c;作用域只有全局作用域和函数作用域&#xff0…

软件工程方法学要素含义_日期时间数据的要素工程

软件工程方法学要素含义According to Wikipedia, feature engineering refers to the process of using domain knowledge to extract features from raw data via data mining techniques. These features can then be used to improve the performance of machine learning a…