1:本文的基础是建立在官方的文档上的,官方文档https://docs.cocos.com/creator/2.4/manual/zh/advanced-topics/jsb-auto-binding.html,由于官方也是引用论坛里别人的连接,所以文档里有些东西是creator旧版本的,但基本思路是一致的,下面主要围绕不同的做说明
2:需要注意点:
(1)下载的python版本必须是32位的2.7版本,下载地址 https://www.python.org/ftp/python/
(2)window环境只需要配置NDK_ROOT的环境变量,PYTHON_BIN是不需要的
3:creator2.4,自己新建的项目是没有tojs文件夹的,但creator的安装目录是有的,这里可以直接把tojs的上一层目录tools拷到项目路径下
4:例子里的有些文件会导入头文件base/CCConsole.h,需要注释掉,新版本已经没这个文件了,注释掉代码不会受影响
// #include "base/CCConsole.h"
ABCJSBBridge.cpp文件更改一下:
#include "ABCJSBBridge.h"
// include platform specific implement class
// #if (CC_TARGET_PLATFORM == CC_PLATFORM_MAC || CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
// #include "ABCJSBBridge-apple.h"
// #define JSBBridgeImpl JSBBridgeApple
// #elif (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
// 这里只实现了android的
#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
#include "ABCJSBBridge-android.h"
#define JSBBridgeImpl ABCJSBBridge_android
#endif
namespace abc
{
// singleton stuff
static JSBBridge *s_SharedJSBBridge = nullptr;
JSBBridge::JSBBridge()
{
DLLOG("Construct JSBBridge %p", this);
init();
}
JSBBridge::~JSBBridge()
{
DLLOG("Destruct JSBBridge %p", this);
s_SharedJSBBridge = nullptr;
}
JSBBridge* JSBBridge::getInstance()