搞了老半天。这么回事啊。工具都在tools中。
jsb模式下是通过打包spidermonkey来执行JS代码的。
JS文件都在assets目录中。我们都知道assets目录。打包后的结果,将apk包解压后就能够直接拿到script
的源代码。
官方工具cocos2d-console,该工具能够将script
编译为字节码。
该工具在官方公布包的tools文件夹下。
在公布的时候自己主动调用该工具,将js编译为jsc例如以下:
Android
在脚本pro.android/build_native.sh里增加自己主动编译的代码,例如以下:
COCOS2D_CONSOLE=$COCOS2DX_ROOT/tools/cocos2d-console/console/ python $COCOS2D_CONSOLE/cocos2d.py jscompile -s assets/script/ -d assets/script/; cd assets/script; find . -type f -name "*.js" | xargs rm -rf; cd ../../;
注意:以上代码要放在调用NDK编译之前。
IOS
能够加入自己定义的run script
选择 项目 -> TARGETS -> Build Phases -> Add Build Phases -> Add Run Script,加入代码例如以下:
source ~/.bash_profile CONSOLE_PATH=$COCOS2DX_ROOT"/tools/cocos2d-console/console/"; TARGET_DIR=$BUILT_PRODUCTS_DIR"/"$PRODUCT_NAME".app/"; JS_DIR=$TARGET_DIR"/script/"; /usr/bin/python $CONSOLE_PATH/cocos2d.py jscompile -s $JS_DIR -d $JS_DIR; find $JS_DIR -type f -name "*.js" | xargs rm -rf;
在编译时就会自己主动调用该脚本。(须要在.bash_profile里定义cocos2dx的根文件夹。而且变量名为COCOS2DX_ROOT)
将js编译为字节码公布。大功告成了。
本文參考:http://www.welefen.com/js-to-jsc-on-cocos2d-html5-jsb-mode.html
时间: 2024-11-21 00:41:35