移植步骤:

1ndk环境搭建linux环境

2Android.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:=$(callmy-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_sharedbox2d_shared

include$(BUILD_SHARED_LIBRARY)

$(callimport-module,cocos2dx/platform/third_party/android/modules/libpng)

$(callimport-module,cocos2dx/platform/third_party/android/modules/libxml2)

$(callimport-module,cocos2dx/platform/third_party/android/modules/libjpeg)

4)Classes/Android.mk

LOCAL_PATH:=$(callmy-dir)

include$(CLEAR_VARS)

LOCAL_MODULE:=game_logic_static

LOCAL_MODULE_FILENAME:=libgame_logic

#获取制定目录下的所有的cpp文件

cppfilestemp1:=$(shellfind$(LOCAL_PATH)/../src-typed)

cppfilestemp2:=$(shellfind$(cppfilestemp1)-name*.cpp)

cppfilestemp3:=$(sort$(cppfilestemp2))

cppfiles:=$(subst$(LOCAL_PATH)/,,$(cppfilestemp3))

cppfilestemp111:=$(shellfind$(LOCAL_PATH)/../lib_json-typed)

cppfilestemp222:=$(shellfind$(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_sharedbox2d_shared

include$(BUILD_STATIC_LIBRARY)

$(callimport-module,cocos2dx/platform/third_party/android/modules/libpng)

$(callimport-module,cocos2dx/platform/third_party/android/modules/libxml2)

$(callimport-module,cocos2dx/platform/third_party/android/modules/libjpeg)

3java代码调用:

static{

System.loadLibrary("cocosdenshion");

System.loadLibrary("box2d");

System.loadLibrary("helloworld");

}

☞:LOCAL_SRC_FILES += $(subst $(LOCAL_PATH)/,,$(shell find $(LOCAL_PATH)/../../../Classes -name "*.cpp" -print))

更多相关文章

  1. 常用的android权限配置和常用工具代码
  2. Android(安卓)我的 Android(安卓)Studio 配置文件
  3. Android(安卓)Gradle 构建工具(Android(安卓)Gradle Build Tools
  4. android文件操作OpenFileInput OpenFileOutput
  5. eclipse android集成开发环境分享 32位 64位
  6. [Android]ListView中分割线的设置
  7. Android拷贝图片到指定文件路径
  8. Android(安卓)P(api28) 不支持 http 协议解决方法
  9. Android(安卓)解析excel文件

随机推荐

  1. 如何使用meta在“NEW”选项卡中重定向
  2. 在回发之前在Jquery LinkBut​​ton中验
  3. Angular2-对象作为无线电输入值
  4. 如何在HTML视频标签中播放FLV视频?
  5. HTML5-Service Worker实现离线页面访问
  6. reload a div without reloading the who
  7. js获取html下拉框中选中值的自定义属性值
  8. html+css 图片右上角加删除叉,图片删除
  9. HTML DIV百分比宽度奇奇怪怪的间距产生了
  10. seo 优化去掉html 页面的后缀 .html