拷贝proj.android目录,并重命名为proj.ophone这样做可避免与其他Android版本的代码冲突。
将SDK/res目录下的文件全部拷贝到proj.ophone/res目录下res/values/g_strings.xml文件中g_class_name节点的值时用来指定游戏原来的Ativity类,如我在此处设置org.cocos2dx.cpp.AppActivity
将SDK/runtime目录直接拷贝到proj.ophone目录下 在使用runtime目录下的jar文件时,要将jar文件导入到项目中,参考:http://blog.csdn.net/justinavril/article/details/2783182
将SDK/AndroidManifest.xml.activity.txt中的文本拷贝到游戏的AndroidManifest.xml中原来的Activity节点之后,记住要保留游戏原来的Activity节点,如果不保留,则和游戏SDK在跳转到游戏的Activity时会找不到对应的类。
将SDK/AndroidManifest.xml.permission.txt中的文本拷贝到游戏的AndroidManifest.xml中
在src/com/org/test目录下(PS:该目录路径跟package指定路径应用时一致的)添加自定义全局Application类 CmgameApplication.java,内容如下:package com.org.test // <-- 该类的package路径应用必须与AndroidManifest.xml中manifest节点的package属性的值一致public class CmgameApplication extends Application { public void onCreate(){ try{ System.loadLibrary('megjb'); } catch ( Exception e ) { ... } }}
在AndroidManifest.xml中的修改配置
由于Eclipse编译cocos2d-x项目时会将libs目录和assets目录的内容都会被删掉,导致APP运行时无法找到libmegjb.so。打包的步骤请参考《在MAC系统下用Eclipse打包cocos2d-x 3.3的项目》,所以文章到这一步都没有将SDK/libs目录和SDK/asssets目录下的文件拷贝到proj.ophone中。首先编译项目,编译成功后,将SDK/libs和SDK/assets目录下的文件拷贝到proj.ophone目录下,右键点击项目Properties打开项目属性,选择Builders将CDT Builder的勾选取消,再次编译运行程序就行。PS:此处还有一个方法可以将第三方的库添加到APK中在Android.mk文件中增加第三方库的引用:1).在将SDK/libs/的armeabi目录拷贝到jni目录下,2).修改在jni目录下的android.mk文件,添加第三方库的引用,在文件LOCAL_PATH := $(call my-dir)之后增加include $(CLEAR_VARS)LOCAL_MODULE := megjbLOCAL_SRC_FILES := armeabi/libmegjb.soinclude $(PREBUILT_SHARED_LIBRARY)