使用cocos2d-js设置jsbindings类的正确方法是什么?

时间:2014-11-05 16:29:13

标签: javascript c++ cmake cocos2d-x cocos2d-js

documentation解释了如何生成jsbindings,但它没有告诉将其集成到项目中的正确方法。我必须遵循哪些步骤?我应该在哪里存储我手动编写的C ++文件?我应该在哪里存储生成的js和c ++文件?我应该编辑哪些CMakeList.txt文件?

1 个答案:

答案 0 :(得分:0)

我相信我找到了一些方法来做到这一点。 请确认我没有做错任何事(我在official forum上复制了此消息。)

让我们将js-bindings测试样本集成到cocos2d-js项目中。

  • 首先生成测试:cd tools/bindings-generator/test && ./test.sh && cd ../../..(可能需要一些配置)。目前因为缺少标题而在Linux上失败,但我提交了merge request
  • 将文件复制到项目中 cp -R tools/bindings-generator/test/simple_test/ frameworks/runtime-src/Classes cp -R tools/bindings-generator/test/simple_test_bindings/ frameworks/runtime-src/Classes
  • 更新CMakeLists.txtframeworks/runtime-src/proj.android/jni/Android.mk,并将添加的文件autogentestbindings.cppsimple_class.cpp添加到目标列表中。
  • 通过在frameworks/runtime-src/Classes/AppDelegate.cpp
  • 中添加sc->addRegisterCallback(register_all_autogentestbindings);,在AppDelegate::applicationDidFinishLaunching中的运行时来源中注册jsb函数

然后在simple_class.h中定义的类在Javascript中可用。以下JS代码应显示1337

console.log((new SimpleNativeClass(1337)).getSomeField())