位置: 编程技术 - 正文

使用ant编译之签名问题(ant编译工具)

编辑:rootadmin

推荐整理分享使用ant编译之签名问题(ant编译工具),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:ant编译打包,ant编译工具,ant编译找不到符号,ant编译工具,ant编译工具,ant编译jar包,ant编译jar包,ant编译工具,内容如对您有帮助,希望把文章链接给更多的朋友!

使用ant编译之签名问题

DionysosLai(@qq.com) /1/5

使用ant编译,可以很大提高项目开发效率。目前,coco2dx官方所提倡的提高几十倍的编译速度,其实就是使用了ant技术。原理提前将引擎库编译成一个so文件,游戏编译时,只需要编译自己的代码即可,而不需要同时编译引擎代码。相比自己的代码与引擎代码量,二者相差了几十倍,因此速度会提高很多。同时另一方面,很多问题,在Eclipse上只会报错,而不能指出具体位置(相信,大家在写mk文件时,就遇到这个问题)。然而,使用了ant编译,问题具体位置将完完全全的显示出来。

当然使用ant编译也有不好的地方,就是每次都会重新编译代码,而不是改动过的代码,这样导致每次生成apk文件都需要1到2分钟,这取决于游戏代码量。

在cocos2dx引擎中,使用ant编译工程,是一项比较复杂的操作,因此打算分成几个部分,详细的将问题阐述清楚。作为第一篇关于ant编译问题,先阐述一个比较简单的话题:签名。这个话题的延伸,就是自动生成apk,自动给apk打签名了。

给apk签名,有两种,一种是手动签名,另一种是自动签名。

手动签名:

1. 生成apk

使用ant编译之签名问题使用ant编译,可以参考这篇pdf文件( 这是,我写的一个自动编译脚本,双击运行即可,这样会自动生成一个debug版的apk(注意,debgu版apk,系统会自动给apk打上bebug签名,只能将

”call ant debug”改成”call ant release”才能生成一个未签名过的release版apk)。

2. Apk签名

如何Apk签名,可以再网上找到相关资料,这里可以参考我自己写的一个脚本命令行:

创建一个.bat文件,将文件放在待签名apk同一级目录下即可,双击运行,之后输入签名key文件的密码,就会在ok文件夹生成签好名的apk了。

这里签名会有一个问题出现:"java.util.zip.ZipException:invalid entry compressed size (expected but got bytes)"。这个问题很多人在网上遇到过,在ant编译时,我也曾遇到过,网上的说法有很多,解决也一样。后来,分析问题,其实很简单,就是说apk大小出错,本来应该是字节,现在确实字节了,然后就报压缩出错问题。其实,之所以出现这个问题,是因为我们尝试使用debug版apk签名了,而debug版apk已经签过名了(这也是apk大小增大的原因)。因此我们只能输出release版apk,再次签名。

直接将”call ant debug”改成”call ant release”,双击运行脚本文件,会报这个如下错误;

(ps,这就是使用ant编译好处,问题出现位置很清楚),这是由于文件” custom_rules.xml”行清清楚楚这样写着” <copyfile="${source.absolute.dir}/../bin/${ant.project.name}-debug.apk"tofile="${customapk.out}/${ant.project.name}.apk" />”我们要做的就是改成这样即可”<copy file="${source.absolute.dir}/../bin/${ant.project.name}-release.apk"tofile="${customapk.out}/${ant.project.name}.apk" />”

3. 验证签名

Apk签名验证,可使用以下命令行,相关资料可以参考: 相对于手动签名,自动签名可以省去手动给apk打上签名这一步骤,不过自动签名是只能是release版,debug版不存在这一步骤。

使用ant编译之签名问题(ant编译工具)

如何自动签名,其实在文件”ant.properties”中,已经写得很详细了:

# This file is used to override default values used bythe Ant build system.

#

# This file must be checked into Version Control Systems,as it is

# integral to the build system of your project.

# This file is only used by the Ant script.

# You can use this to override default values such as

# 'source.dir' forthe location of your java source folder and

# 'out.dir' forthe location of your output folder.

# You can also use it define how the release builds aresigned by declaring

# the following properties:

# 'key.store' forthe location of yourkeystore and

# 'key.alias' forthe name of the key to use.

# The password will be askedduring the build when you use the 'release' target.

根据其提示,在这个文件中添加如下几句即可:

注意,这里”key”是签名key,,是其密码。这里可能会有一个这样一个错误。

引起这个错误的原因,就是unix与window的&#;式问题,也就是将”/”,写错了””。

ok,关于ant签名差不多就到这里了,希望对大家有用。

cocostudio2.0 碰到的问题 自己的项目前面做完了,最近和同事一起做另外一个项目,因为我以前用的是cocostuido1.6版本的,而他用的是cocostudio2.0版本,所以,刚开始的时候,还是

Bullet(Cocos2dx)之优化PhysicsDraw3D 为了测试bullet物体的大小,匆匆写完的PhysicsDraw3D的效率低的要命,这也是为什么cocos2dx弃用了DrawPrimitives,而去使用DrawNodeDrawPrimitives每次绘制都去调用glDr

cocos2dx-3.0() ScrollView 缩放 及 touch新用法 转自

标签: ant编译工具

本文链接地址:https://www.jiuchutong.com/biancheng/372631.html 转载请保留说明!

上一篇:cocos2dx 3.2 利用clippingNode把图片裁剪成圆形,接口可直接使用(cocos2d schedule)

下一篇:cocostudio2.0 碰到的问题(cocos2048)

  • 什么公司需要缴纳印花税
  • 增值税专用发票几个点
  • 分期付款的消费税按实际收入算吗对吗
  • 环保税的纳税义务人是施工方还是建设方安徽
  • 房屋买卖收税
  • 加计抵扣10%的进项税 会计处理
  • 增值税上月多交税本月怎么办
  • 汇算清缴企业所得税退税账务处理
  • 营业外支出罚款所得税怎么处理
  • 网上报税需要准备什么资料
  • 间接持股比例怎么
  • 农产品核定扣除增值税进项税额计算表
  • 煤炭企业会计核算办法
  • 通用原始凭证有哪些?
  • 产品成本核算需要经过哪些程序
  • 企业购买扶贫物资怎么入账
  • 客户已经抵扣的发票怎么开负数发票给对方
  • 小规模纳税人月销售额不超过10万免征
  • 一般纳税人注销公司流程2023
  • 技术转让所得一百万交多少税
  • 售楼部购买空调计入哪个科目
  • 职业培训和职业技能培训的区别
  • 对方公司税务注销了发票没有开给我怎么办
  • 软件进项税额分摊方式
  • 消耗性生物资产是指什么
  • 出口50万货物退多少税
  • 免税收入包括哪些收入
  • 代开普通发票要什么材料?
  • 苹果7充电设置在哪里
  • cpu调度schedutil好吗
  • php判断ua
  • 微软 Windows x64 仿真正式推出,只支持 Win11 ARM
  • 税盘进项税额怎么做
  • 保险业营改增
  • 监事 兼职
  • 资本公积转增注册资本的条件
  • 加计扣除减免政策
  • php函数传递参数方式
  • 小规模城建税减半征收2021新政策
  • php中类静态成员描述不正确的是
  • 前端作业做一个网站
  • 普通发票可以跨年报销吗
  • 个人怎么开专票
  • 外地预交的企业所得税如何在季度企业所得税申报
  • 应收股利的明细科目
  • mysql union和join
  • 现金股利和现金利润的区别
  • 安装sql server 2005,安装不成功怎么设置
  • 固定资产加速折旧计算方法
  • 车间里停止生产怎么办
  • 企业租车接送员工上下班
  • 一年内到期的非流动负债计算公式
  • 投资性房地产改造期间计提折旧吗
  • 原材料变为商品怎么做账
  • 收据可以纳税吗
  • 开发间接费用怎么计算
  • 一次性补缴养老保险的最新规定
  • 高新技术企业的税收优惠政策
  • 企业进行长期投资的意义
  • sql 判断数据是否存在
  • mysql和mysql数据库的区别
  • mysql数据库随机取数据
  • 搜狗拼音输入法xp系统
  • xp系统无法登录系统
  • win7误删注册表
  • linux临时修改编码
  • pacis.exe - pacis是什么进程 有什么用
  • 删除文件时出现错误是怎么回事
  • ExtJS4如何给同一个formpanel不同的url
  • nodejs获取post数据
  • unity摄像机范围
  • linux bash shell中case语句的实例
  • java.基础
  • jquery 输出
  • 获取已安装应用列表的权限在哪里设置
  • python字符串strip的作用
  • javascript教程 csdn
  • 江西省国家税务局电子税务局
  • 贵阳税务局领导
  • 河北省税务局稽查局领导班子
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设