jsbrage——和app互動

來源:互聯網
上載者:User

標籤:nec   setup   src   called   jsb   out   EDA   webview   use   

<html><head>    <meta content="text/html; charset=utf-8" http-equiv="content-type">    <title>        js調用java    </title></head><body><p>    <div id="show"></div></p><p><input type="button" id="enter3" value="payInterface" onclick="payInterface();"/></p></body><script>        function setupWebViewJavascriptBridge(callback) {            if (window.WebViewJavascriptBridge) {                callback(WebViewJavascriptBridge)            } else {                document.addEventListener(                    ‘WebViewJavascriptBridgeReady‘                    , function() {                        callback(WebViewJavascriptBridge)                    },                    false                );            }            if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); }            window.WVJBCallbacks = [callback];            var WVJBIframe = document.createElement(‘iframe‘);            WVJBIframe.style.display = ‘none‘;            WVJBIframe.src = ‘wvjbscheme://__BRIDGE_LOADED__‘;            document.documentElement.appendChild(WVJBIframe);            setTimeout(function() { document.documentElement.removeChild(WVJBIframe) }, 0)        }        //在改function 中添加原生調起js方法        setupWebViewJavascriptBridge(function(bridge) {            //註冊原生調起方法            //參數1: buttonjs 註冊flag 供原生使用,要和原生統一            //參數2: data  是原生傳給js 的資料            //參數3: responseCallback 是js 的回調,可以通過該方法給原生傳資料            bridge.registerHandler("getUserInfos",function(data,responseCallback){                document.getElementById("show").innerHTML = "buuton js" + data;                responseCallback("button js callback");            });            document.getElementById(‘enter3‘).onclick = function (e) {            var data = "hello"            //參數1: pay 註冊flag 供原生使用,要和原生統一            //參數2: 是調起原生時向原生傳遞的參數            //參數3: 原生調用回調返回的資料            bridge.callHandler(‘getBlogNameFromObjC‘,data,function(resp){                    document.getElementById("show").innerHTML = "payInterface" + resp;                }             );        }        })</script></html>

 

 

 

 

function connectWebViewJavascriptBridge (callback) { if (window.WebViewJavascriptBridge) { callback(WebViewJavascriptBridge) } else { document.addEventListener( ‘WebViewJavascriptBridgeReady‘ , function() { callback(WebViewJavascriptBridge) }, false ); } }connectWebViewJavascriptBridge (function(bridge) { bridge.registerHandler(‘JS Echo‘, function(data, responseCallback) { console.log("JS Echo called with:", data)responseCallback(data) }) bridge.callHandler(‘oliveness‘, {}, function responseCallback(responseData) {}) })

  

jsbrage——和app互動

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.