下载cocos2d-x3.0rc后根据官方教程进行环境配置等等一系列过程没有遇到什么问题

打包apk时出现一些问题:

按照官方教程cmd下运行cocos run -p android -m release进行apk打包,会出现“xxxxx\ant 不是内部或外部命令,也不是运行的程序”

查看环境变量PATH=%ANT_ROOT%/bin早已配好,cmd下也可以直接运行ant,所以暂不知道什么原因导致出现的这个问题

谷歌一下解决方案,需要手动ant:

在cmd下输入ant clean release -f 自己项目下的build.xml -Dsdk.dir=${ANDROID_SDK_ROOT} 即可在bin目录下看到打包好的apk文件了。

打包release版本的apk需要签名

首先要生成key.store和key.alias,有两种生成方法,1.用eclipse,2.用KeyTool和jarsigner,我只记录第二种

KeyTool在java的bin目录下

cmd下java的bin目录下    keytool -genkey -v -keystore my-release-key.keystore -alias my-release-key.keystore -keyalg RSA -keysize 2048 -validity 10000

-genkey    产生证书文件

-keystore  指定密钥库的.keystore文件

-keyalg     指定密钥的算法

-alias       产生别名

-validity    有限时间

之后会有密码和一系列问题需要输入即可,证书会生成在java的bin目录下

注意:在用keytool生成数字证书时必须保证:-keystore androidapp.keystore -alias androidapp.keystore 两者名称必须相同。否则下一步签名时会出现错误:jarsigner: 找不到 androidapp.keystore 的证书链。androidapp.keystore 必须引用包含专用密钥和相应的公共密钥证书链的有效密钥库密钥条目。

最后是给release版本的apk签名

在项目下的ant.properties文件中加入以下代码后用ant打包release版本的apk就可以自动签名了(密码是生成证书时自己输入的密码)

key.store=my-release-key.keystore
key.alias=my-release-key.keystore
key.store.password=123456
key.alias.password=123456

或者将没有签名的release版本apk和key.keystore放在用一个目录

cmd下java的bin目录下   jarsigner -verbose -keystore my-release-key.keystore -signedjar test-release_signed.apk test-release-unsigned.apk my-release-key.keystore my-release-key.keystore

这样也能将apk签名

参考文章

http://www.cnblogs.com/ghj1976/archive/2011/07/18/2109381.html

http://blog.csdn.net/houshunwei/article/details/7732183

http://www.cnblogs.com/sw926/p/3240295.html

cocos2d-x3.0rc打包apk遇到的一些问题记录的更多相关文章

  1. Android Studio 多个编译环境配置 多渠道打包 APK输出配置

    看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...

  2. Unity自动打包 apk

    1.流程 Unity打包 apk,会把Unity安装目录下的默认 AndroidManifest.Xml 文件覆盖到apk中去,同时还会拷贝该文件所在目录下的其它默认设置文件,如 res 和 asse ...

  3. cocos2dx打包apk

    一.相关工具准备 1.SDK 2.NDK 3.ANT 4.JDK 并且搭建好JDK环境 二.搭建环境 1.打开cocos2dx目录下的setup.py文件 2.如图所示,按照提示分别输入之前下载的ND ...

  4. eclipse打包apk

    eclipse打包apk

  5. ApkTool反编译apk,去除广告或者汉化后重新打包apk,并签名

    http://my.oschina.net/mopidick/blog/135581 以ubuntu的环境为例子,window的大同小异 首先下载apktool工具:https://code.goog ...

  6. Android studio打包APK混淆配置

    要在打包APK时加入混淆需要在Module中的buid.gradle中加入如下信息 buildTypes { release { minifyEnabled true shrinkResources ...

  7. Unity自动打包Apk

    unity打包apk相对来说比较容易,相信出过的人都明白,出包过程,没有大的难度,一步一操作,一步一等待,繁琐耗时,不懂的人又代替不了.这时候需求就来了,如何简单的一键打包搞定,这个就稍微有点难度,当 ...

  8. 【转】android Apk打包过程概述_android是如何打包apk的

    最近看了老罗分析android资源管理和apk打包流程的博客,参考其他一些资料,做了一下整理,脱离繁琐的打包细节和数据结构,从整体上概述了apk打包的整个流程.   流程概述: 1.打包资源文件,生成 ...

  9. 使用apktool解包和打包apk

    使用apktool解包和打包apk 下载apktool工具 解包 apktool d xxx.apk -f 植入代码 使用apktool解包要植入代码的apk(下面称为A), 使用apktool解包包 ...

随机推荐

  1. lua学习笔记(八)

      元表与元方法  基本概念         1.lua中每个值都有一个元表         2.table和userdata可以有各自独立的元表         3.其它类型的值共享其类型所属的单一 ...

  2. MapReudce源码分析之Mapper

    Mapper是MapReduce编程模型中一个将输入的key/value对映射成一组中间key/value对的组件.Map是将输入记录转换成中间记录的单个任务.被转换的中间记录不需要与输入记录一样的类 ...

  3. 为什么是kafka(二)

    回答几个网友提出的问题,不清楚的能够看上一篇内容. 1.  kafka的删除策略应该怎么配置?为了提升性能.我是不是应该1小时删除一次消费过的数据. 全然能够依据磁盘大小配置.仅仅要磁盘足够用,全然不 ...

  4. (转)深入理解Java内存模型之系列篇

    原文地址: http://blog.csdn.net/ccit0519/article/details/11241403 深入理解Java内存模型(一)——基础 并发编程模型的分类 在并发编程中,我们 ...

  5. Linux中rpm包管理器

    包全名: 1.操作的包是没有安装的软件包时,使用全名,而且要注意路径 2.例如:jdk-8u131-linux-x64.rpm包名: 1.操作的是已经安装好的软件包,使用包名,是搜索/var/lib/ ...

  6. centos7 Authentication failure

    root@localhost ~]#su bash-4.2$ su Password: su: Authentication failure //这里切换的是系统用户,现在还不清楚为什么postgre ...

  7. 从 零开始 无差错 装好nginx+PHP

    由于这两天 一直有人追问 nginx为何报错,为何php没装好啥的,大多原因是 : 1.编译与yum混合安装,导致很多包的路径不对,进而报错 2.yum源比较旧,导致 与新版本的php不匹配 3.安装 ...

  8. 使用基本 SQL 命令

    概述 在本教程中,将学习结构化查询语言 (SQL),包括: 使用基本 SQL 命令 执行基本数据操做 数据库和 SQL 在本系列教程中,目前我们使用平面文本文件来存储数据.平面文本文件可能适合相对较少 ...

  9. DOM指针

    dom节点改变 会自动改变节点的指针 child = formula.firstChild while(child){ next = child.nextSibling; formula.remove ...

  10. iOS 屏幕原点坐标 && 导航栏风格的自定义

    其一 屏幕原点坐标 (x ,y) 受 self.navigationController. navigationBar 的 setTranslucent (BOOL) 属性控制 在 iOS7 以后   ...