美文网首页程序员
Cordova交互概述

Cordova交互概述

作者: xiaomich | 来源:发表于2017-03-13 16:40 被阅读0次

    Android端

         App启动会调用Application的create方法,然后创建Main Activity,该Activity继承于CordovaActivity,启动Activity会调用onCreate方法,对window做一些设置,并设置webview布局。如图类调用关系:

    然后调用super.loadUrl("file:///android_asset/www/index.html");

    loadUrl函数会调用Init方法,创建一个CordovaWebView,并设置了CordovaWebViewClient和CordovaChromeClient。

    在实例化CordovaWebView时,对PluginManager做了初始化工作,而在CordovaWebViewClient的onPageStarted方法里初始化并启动CallbackServer。

    CordovaWebViewClient的onJsPrompt方法截获Web端的JavaScript消息,调用PluginManager的exce方法执行插件。

    插件执行成功后调用CallbackServer的sendJavaScript方法给Js端返回回调Js代码。

    js->native交互形式

    通过 prompt()和 Native 交互,Js代码如下:

    Native代码通过WebChromeClient拦截onJsPrompt回调,利用gap:开头标志得知是调用本地插件请求,然后向PluginManager转发该请求。PluginManager将会根据参数来查找并执行具体插件方法。

    js层通过prompt向本地发送poll请求,本地将从CallBackServer中拿出下一个回调返回给js层。

    Js与Native交互形式如下代码所示:

    相关文章

      网友评论

        本文标题:Cordova交互概述

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