美文网首页Cocos CreatorCocos Creator
Cocos Creator教程:JSB2.0反射js代码

Cocos Creator教程:JSB2.0反射js代码

作者: 33b882c6c780 | 来源:发表于2018-07-24 18:39 被阅读5次

    由于之前使用版本是1.4.0来开发游戏,当把升级到1.9.1时。发布原生平台时,发现与1.4有很大的不同。原因是从 v1.7 开始引入 JSB 2.0 ,其中js代码反射原生还没什么问题。当原生反射到js函数时就会出问题了。下面就讲解下如何在v1.7以后的版本中使用原生函数反射js代码。

    image

    Android平台

    在v1.6以前可以直接使用:

    Cocos2dxJavascriptJavaBridge.evalString("你的代码");
    

    v1.7以后只能用以下方式:

     Cocos2dxHelper.runOnGLThread(new Runnable() {
          @Override
          public void run() {
                Cocos2dxJavascriptJavaBridge.evalString("你的代码");
                }
    });
    

    ios平台

    在v1.6以前是引入#include "ScriptingCore.h",然后使用以下方法:

    //引入头文件
    #include "ScriptingCore.h"
    //使用
    ScriptingCore::getInstance()->executeString("你的代码");
    

    到了v1.7以后,JS 引擎的管理从 ScriptingCore 被移动到了 se::ScriptEngine 类中。于是变成下面方式:

    //引入头文件
    #include "cocos/scripting/js-bindings/manual/ScriptingCore.h"
    #include "cocos/scripting/js-bindings/jswrapper/SeApi.h"
    //使用
    se::ScriptEngine* se = se::ScriptEngine::getInstance();
    se->evalString("你的代码");
    
    

    相关文章

      网友评论

        本文标题:Cocos Creator教程:JSB2.0反射js代码

        本文链接:https://www.haomeiwen.com/subject/nooxkftx.html