首先,进行环境配置。
jdk1.8 : https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html

ndk-r10e :https://developer.android.google.cn/ndk/downloads/revision_history


ant:
https://archive.apache.org/dist/ant/binaries/

sdk https://android-sdk.en.softonic.com/download

当然这不是SDK,只是一个下载SDK的工具。
最终结果如图所示:

下载好后,对压缩包进行解压。
现在讲一下安装的具体操作:
jdk,配置环境变量:
打开电脑的搜素框输入 编辑系统环境变量,如下

点击,就会弹出


新建 : JAVA_HOME

新建: classpath
变量值:.;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
注意,不要少了标点符号 .;

配置 path
新建: %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

点击新建,然后输入:

ant 的环境设置

点击 新建 按钮,然后输入ant的路径
D:Downloads\apache-ant-1.9.7-bin\apache-ant-1.9.7\bin

将cocos2dx和android环境关联起来。就是把 ndksdkant配置到cocos2dx的环境中。


然后,输入 setup.py

然后,依次输入 ndk 、sdk、 ant 的路径。
接下来

需要将class文件夹下面的cpp文件添加进 Android.mk文件中,

这里,我们可以选择一个一个地添加 cpp 或 c 文件,但是文件数量多了以后就容易出现问题。
为此,建议改成

define walk
$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
endef
#遍历Classes目录
ALLFILES = $(call walk, $(LOCAL_PATH)/../../Classes)
FILE_LIST := hellocpp/main.cpp
#从所有文件中提取出所有的.cpp和.c文件
FILE_LIST += $(filter %.cpp %.c, $(ALLFILES))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)

接下来,打包APK
在项目页面,打开cmd窗口

输入命令 cocos compile -p android --ap android-29
解释:android-29 是你下载的SDK的名称
之后就等待游戏编译,编译成功后会出现


遇到的问题有:
1、程序包org.apache.http.message不存在,即缺少 org.apache.http包。
方法:此时,在sdk下,找到 org.apache.http.legacy.jar 。然后

org.apache.http.legacy.jar 这个包放到,D:\myWorkSpace\justTest\cocos2d\cocos\platform\android\java\libs目录下面:

原因是: android 6.0(api 23) SDK,不再提供org.apache.http.*(只保留几个类). sdk 23版本以上的就没有这个程序包了。需要的话,要自己手动添加。

2、[Error] ‘to_string’ was not declared in this scope to_string()
方法:

将Application.mk,里面的

改为
APP_STL := c++_static
这里可以查看:
https://lichuachua.blog.csdn.net/article/details/103092876
3、有些windows特有的方法是无法在 android 使用的,如
sprintf_s,这个只能在windows上使用,因此打包的适合会出问题,我们需要替换成 snprintfsnprintf才是通用的方法。


因此,最好使用标准函数,如果打算跨平台的话。

可以参照的博客:
https://www.jianshu.com/p/f78719e9a638
https://blog.csdn.net/pikefish/article/details/84950344
https://blog.csdn.net/HappyKocola/article/details/73554867

cocos2dx打包APK相关推荐

  1. 实训三(cocos2dx 3.x 打包apk)

    上一篇文章<实训二(cocos2dx 2.x 打包apk)>简单的讲述的利用cocos2dx 2.x引擎在windows平台上打包apk的方法与过程,本文将介绍3.x版本引擎,如何打包ap ...

  2. win8下cocos2dx3.2移植android平台及代码打包APK

      cocos2dx程序不能只在VS2012下运行,迟早是要搬运到Android和IOS上的.Windows下移植IOS平台先搁下不说比较困难,而且只有越狱的苹果机才可以运行,而且毕竟IOS高端.小众 ...

  3. cocos2dx3.2打包apk

    原文地址:https://my.oschina.net/Jacedy/blog/350226 一.下载Android环境 搭建Android环境需要用到Android SDK.NDK.Ant和JDK: ...

  4. cocos2dX打包图文详解

    注意: (1)请确保你的图片等资源全部都是英文名称,有一个是中文都会编译不过. (2)在编译的时候,请关闭所有正在运行的程序,以确保有足够的内存编译你的安卓项目. 第一步:安装jdk,双击安装,接下来 ...

  5. cocos2d-x3.0rc打包apk遇到的一些问题记录

    下载cocos2d-x3.0rc后根据官方教程进行环境配置等等一系列过程没有遇到什么问题 打包apk时出现一些问题: 按照官方教程cmd下运行cocos run -p android -m relea ...

  6. egret 发布android原生项目(一)打包apk

    一.发布Android工程 1.在Egret Launcher创建一个Demo项目(引擎版本:5.2.6),并点击发布 2.发布设置 3.发布完成后,会在Demo同级目录下生成Demo_android ...

  7. android 自定义apk名,Android Studio多渠道打包、自定义打包APK名称

    现在为了推广产品,会在多个渠道应用市场发布应用,为了统计不同渠道的数据,需要在应用中表明渠道,如果一个一个去修改打包效率会很低.AS为我们提供了简便的方法,可以多渠道打包,一次打包所有的渠道包. 1. ...

  8. cocos2d-x 打包成so文件之后,假设出现错误,能够使用ndk-stack来查看里面的异常...

    cocos2d-x  打包成so文件之后,假设出现错误,能够使用ndk-stack来查看里面的异常 详细方法.自行百度. 转载于:https://www.cnblogs.com/jzssuanfa/p ...

  9. python手册中文版apk-python怎么打包apk

    Kivy 是一个开源的 Python 框架,用于快速开发应用,实现各种当前流行的用户界面,比如多点触摸等等.且Kivy可以运行于Windows, Linux,MacOS, Android, iOS 等 ...

最新文章

  1. 【C++】多态问题:基类调用子类的protected或者private函数
  2. Python基础知识(第六天)
  3. 复现经典:《统计学习方法》第14章 聚类方法
  4. [Leetcode][第98 450 700 701题][JAVA][二叉搜索树的合法性、增、删、查][递归][深度遍历]
  5. recipe for target 'aclocal.m4' failed
  6. 最优乘车(信息学奥赛一本通-T1377)
  7. 超级菜菜鸟全程架站攻略(Mysql+Apche+PHP+Phpmyadmin+Zend,含本机安装)
  8. 技术分享丨华为鲲鹏架构Redis知识二三事
  9. 并发框架disruptor(高性能内存Queue)
  10. 对于开发 0 bug 代码的思考——Design by Contract 契约设计
  11. 浅谈Spring如何利用三个缓存Map解决循环依赖
  12. SQL常用语句总结整理
  13. vue扫码跳转页面_VUE 网页 扫码登录(微信)
  14. thinkphp6 循环 视图_ThinkPHP6 视图
  15. Fibonacci费氏数列
  16. 2021年茶艺师(初级)新版试题及茶艺师(初级)考试总结
  17. Mysql统计男女比例
  18. The Lottery Ticket Hypothesis
  19. ROG 冰刃 3 枪神 2 Plus 第二时间上手体验
  20. Quartus 13.0和Modelsim SE 10.1a 联合仿真

热门文章

  1. 体系设计建模软件系统
  2. java计算机毕业设计体育新闻网站源码+系统+数据库+lw文档+mybatis+运行部署
  3. 两个三维向量的夹角计算
  4. 有人爬了一万个购物网站,发现了1818个「年底大促」的商家小伎俩
  5. thinkphp核心 伯乐发卡系统高级版PHP网站源码 已去授权无后门_已测
  6. 台湾--身份证(本国人)正则表达式
  7. java 3行4列二维数组_输入一个3行4列矩阵到二维数组中,并打印出来
  8. 中国农业银行h5支付(php接入中国农业银行h5支付)
  9. 分省市县地理空间矩阵:地级市空间、地理距离矩阵等多指标数据集
  10. 超级全的PCB LAYOUT高速信号走线指南