当前位置: 首页 > Web前端 > HTML

WebViewJavascriptBridge.js代码学习

时间:2023-03-28 10:28:53 HTML

//notation:js文件只能使用这种注释//因为在webview.loadurl中使用注释会出错,//注释会被java使用regexp(function(){如果(window.WebViewJavascriptBridge){return;}varmessagingIframe;varbizMessagingIframe;varsendMessageQueue=[];varreceiveMessageQueue=[];varmessageHandlers={};varCUSTOM_PROTOCOL_SCHEME='yy';varQUEUE_HAS_MESSAGE='__QUEUE_MESSAGE__/';varresponseCallbacks={};varuniqueId=1;//创建消息索引队列iframefunction_createQueueReadyIframe(doc){messagingIframe=doc.createElement('iframe');messagingIframe.style.display='none';doc.documentElement.appendChild(messagingIframe);}//创建消息体列表iframefunction_createQueueReadyIframe4biz(doc){bizMessagingIframe=doc.createElement('iframe');bizMessagingIframe.style.display='none';doc.documentElement.appendChild(bizMessagingIframe);}//setdefaultmessageHandler初始化默认消息线程functioninit(messageHandler){if(WebViewJavascriptBridge._messageHandler){thrownewError('WebViewJavascriptBridge.initcalledtwice');}WebViewJavascriptBridge._messageHandler=messageHandler;varreceivedMessages=receiveMessageQueuere;=空;对于(vari=0;i