移植步骤 :
1:ndk 环境搭建 linux环境
2:Android.mk文件的编写:
四个核心文件:
1):android/jni/Application.mk
2): android/jni/Android.mk
subdirs := $(addprefix $(LOCAL_PATH)/../../../,$(addsuffix /Android.mk, \
cocos2dx \
CocosDenshion/android \
Box2D \
))
3):android/jni/helloworld/Android.mk文件
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := helloworld_shared
LOCAL_MODULE_FILENAME := libhelloworld
LOCAL_SRC_FILES := main.cpp
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../Classes
LOCAL_STATIC_LIBRARIES := png_static_prebuilt
LOCAL_STATIC_LIBRARIES += xml2_static_prebuilt
LOCAL_STATIC_LIBRARIES += jpeg_static_prebuilt
LOCAL_WHOLE_STATIC_LIBRARIES := game_logic_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos2dx_static
LOCAL_SHARED_LIBRARIES := cocosdenshion_shared box2d_shared
include $(BUILD_SHARED_LIBRARY)
$(call import-module,cocos2dx/platform/third_party/android/modules/libpng)
$(call import-module,cocos2dx/platform/third_party/android/modules/libxml2)
$(call import-module,cocos2dx/platform/third_party/android/modules/libjpeg)
4) Classes/Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := game_logic_static
LOCAL_MODULE_FILENAME := libgame_logic
#获取制定目录下的所有的cpp文件
cppfilestemp1 := $(shell find $(LOCAL_PATH)/../src -type d)
cppfilestemp2 := $(shell find $(cppfilestemp1) -name *.cpp)
cppfilestemp3 := $(sort $(cppfilestemp2))
cppfiles := $(subst $(LOCAL_PATH)/,,$(cppfilestemp3))
cppfilestemp111 := $(shell find $(LOCAL_PATH)/../lib_json -type d)
cppfilestemp222 := $(shell find $(cppfilestemp111) -name *.cpp)
cppfilestemp333 := $(sort $(cppfilestemp222))
cppfilesss := $(subst $(LOCAL_PATH)/,,$(cppfilestemp333))
LOCAL_SRC_FILES := \
AppDelegate.cpp \
GLES-Render.cpp \
$(cppfiles) \
$(cppfilesss)
LOCAL_C_INCLUDES := $(LOCAL_PATH) \
$(LOCAL_PATH)/../../cocos2dx \
$(LOCAL_PATH)/../../cocos2dx/platform \
$(LOCAL_PATH)/../../cocos2dx/include \
$(LOCAL_PATH)/../../cocos2dx/lua_support \
$(LOCAL_PATH)/../../CocosDenshion/include \
$(LOCAL_PATH)/../src/include \
$(LOCAL_PATH)/../lib_json/include
LOCAL_STATIC_LIBRARIES += xml2_static_prebuilt
LOCAL_STATIC_LIBRARIES += jpeg_static_prebuilt
LOCAL_WHOLE_STATIC_LIBRARIES += cocos2dx_static
LOCAL_SHARED_LIBRARIES := cocosdenshion_shared box2d_shared
include $(BUILD_STATIC_LIBRARY)
$(call import-module,cocos2dx/platform/third_party/android/modules/libpng)
$(call import-module,cocos2dx/platform/third_party/android/modules/libxml2)
$(call import-module,cocos2dx/platform/third_party/android/modules/libjpeg)
3:java代码调用:
static {
System.loadLibrary("cocosdenshion");
System.loadLibrary("box2d");
System.loadLibrary("helloworld");
}
☞: LOCAL_SRC_FILES += $(subst $(LOCAL_PATH)/,,$(shell find $(LOCAL_PATH)/../../../Classes -name "*.cpp" -print))
相关推荐
这个名为“coco2d-x基础资料-doc”的压缩包文件显然包含了关于Cocos2d-x的基础学习材料和文档。以下是对Cocos2d-x及其相关知识点的详细解释。 一、Cocos2d-x概述 Cocos2d-x是一个跨平台的游戏开发框架,它是Cocos2d...
coco2d-x2.03 chm 文档.
1. **环境配置**:首先,你需要在你的计算机上安装Cocos2d-x 3.8开发环境,这包括设置好C++编译器、NDK(Android Native Development Kit)和JDK(Java Development Kit),并确保所有依赖项正确配置。 2. **项目...
Coco2d-js具有跨平台特性,可以用来开发iOS、Android、Windows等多平台的应用程序。其主要特点包括: 1. **高性能**:利用WebGL技术进行图形渲染,提供流畅的动画效果。 2. **易用性**:采用JavaScript作为脚本语言...
首先,Cocos2d-x是一款跨平台的开源游戏引擎,基于C++编写,支持多种操作系统,如iOS、Android、Windows等。在BulletWar中,使用的是Quick-Cocos2dx-Community 3.6.1版本,它是一个Cocos2d-x的轻量级扩展,提供了更...
cocos2d-x是一个强大的开源跨平台2D游戏开发框架,使用C++语言编写,支持iOS、Android、Windows等多个操作系统。在这款游戏中,开发者充分利用了cocos2d-x的功能,为新手提供了了解和学习引擎的优秀实例。 首先,...
cocos2d-x是一款开源的游戏开发框架,专为跨平台游戏开发设计,支持iOS、Android、Windows等操作系统。其API(应用程序接口)是开发者与引擎交互的核心,通过熟练掌握cocos2d-x API,可以极大地提高游戏开发效率和...
cocos2d-x是一个开源的游戏开发框架,它基于cocos2d,并且支持跨平台开发,包括iOS、Android、Windows等操作系统。这套资源主要包括了书中示例代码和相关的图片素材,对于深入理解和实践cocos2d-x 3.x的游戏开发技巧...
cocos2d-x是一个跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多平台游戏开发。在这款坦克大战中,开发者利用cocos2d-x 3.8版本的特性,构建了一个激动人心的战斗场景,旨在为玩家带来重温经典的游戏...
cocos2d-x是一个跨平台的游戏开发框架,支持iOS、Android、Windows等多个操作系统,用C++编写,同时提供Python和Lua的接口,方便不同背景的开发者使用。 在这款项目中,我们可以深入理解cocos2d-x的以下核心知识点...
Cocos2d-x是一款开源的游戏开发框架,它允许开发者使用C++、Lua或者JavaScript进行游戏编程,并能跨平台运行在iOS、Android、Windows等操作系统上。这个项目特别之处在于它实现了大家熟知的“贪吃蛇”游戏,一个简单...
cocos2d-x是一个跨平台的2D游戏开发框架,广泛应用于移动设备,如iOS和Android。lua是一种轻量级的、面向过程的编程语言,因其简洁和高效而被许多游戏开发者用作脚本语言,特别是在游戏逻辑和界面交互中。 在cocos...
Cocos2d-x是一个跨平台的2D游戏引擎,支持多种操作系统,包括iOS、Android以及Windows等。为了保护游戏资源不被轻易篡改或盗用,开发者通常会对资源进行打包和加密。本文将详细介绍如何在Cocos2d-x环境中对游戏资源...
Cocos2D-x是一个基于C++的跨平台2D游戏引擎,它允许开发者用一种语言编写游戏,然后在iOS、Android、Windows、Mac等多个平台上发布。其强大的功能和易用性使其成为许多独立开发者和小型团队的首选。 该指南深入浅出...
这份“coco2d-x面试题(无脑码农).pdf”文件似乎提供了关于Cocos2d-x核心概念的一些常见面试问题。下面,我们将深入探讨这些知识点。 1. **CCScene、CCLayer与CCSprite** - **CCScene** 是应用程序工作流程中的独立...
1. **Coco2d-x Wiki**:官方Wiki是学习Cocos2d-x的核心资源,包含了详细的API文档、开发指南和常见问题解答,对于解决具体技术难题非常有帮助。 2. **多平台项目创建教程**:Cocos2d-x官方网站提供了如何通过一条...
这通常涉及到将Cocos2d-x项目结构下的两个Android项目(通常是`proj.android`和`cocos2d-android-ndk-project`)导入到Eclipse的工作空间中。 在导入项目后,你可能会发现Eclipse的`Properties/Builders`菜单中缺失...
cocos2d-x是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本文将深入探讨cocos2d-x的核心概念、主要功能和使用方法。 一、cocos2d-x基础 1. 概述:cocos2d-x基于cocos2d-...
cocos2d-android 是一款专为Android平台设计的游戏开发框架,它基于开源的cocos2d-x进行优化,旨在为开发者提供一套高效、易用的游戏开发工具,使得在Android平台上创建交互式2D游戏变得简单而直观。cocos2d-android...