1
documentation解释了如何生成jsbindings,但它没有说明将其集成到项目中的正确方法。我必须遵循哪些步骤?我应该在哪里存储我手动编写的C++文件?我应该在哪里存储生成的js和C++文件?我应该编辑哪些CMakeList.txt文件?使用cocos2d-js设置jsbindings类的正确方法是什么?
documentation解释了如何生成jsbindings,但它没有说明将其集成到项目中的正确方法。我必须遵循哪些步骤?我应该在哪里存储我手动编写的C++文件?我应该在哪里存储生成的js和C++文件?我应该编辑哪些CMakeList.txt文件?使用cocos2d-js设置jsbindings类的正确方法是什么?
我相信我找到了一些方法来做到这一点。 请确认我没有做错任何事(我在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.txt
和frameworks/runtime-src/proj.android/jni/Android.mk
,并添加添加的文件autogentestbindings.cpp
和simple_class.cpp
到目标列表。sc->addRegisterCallback(register_all_autogentestbindings);
在simple_class.h
定义AppDelegate::applicationDidFinishLaunching
然后类的Javascript注册在frameworks/runtime-src/Classes/AppDelegate.cpp
运行时源的JSB功能可用。以下JS代码应该显示1337
。
console.log((new SimpleNativeClass(1337)).getSomeField())