js调用android和ios方法,js调用ios和安卓方法

安卓:

window.AndroidWebView.方法名(参数);window.AndroidWebView.productDetail(1989);ios:

function isbrowser() {

// 浏览器判断

return window.browser = {

versions: function () {

var u = navigator.userAgent,

app = navigator.appVersion;

return { //移动终端浏览器版本信息

trident: u.indexOf('Trident') > -1, //IE内核

presto: u.indexOf('Presto') > -1, //opera内核

webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核

gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核

mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端

ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端

android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或uc浏览器

iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器

iPad: u.indexOf('iPad') > -1, //是否iPad

webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部

};

}(),

language: (navigator.browserLanguage || navigator.language).toLowerCase()

};

}

var productDetail;

function InitWebViewJavascriptBridge(callback) {

var ua = window.navigator.userAgent.toLowerCase();

if (window.AndroidWebView || !isbrowser().versions.ios || ua.match(/MicroMessenger/i) == 'micromessenger') {

return;

}

function _callback(bridge) {

window.WebViewJavascriptBridge = bridge;

if (callback) callback(bridge);

}

if (window.WebViewJavascriptBridge) {

_callback(WebViewJavascriptBridge);

return;

}

if (window.WVJBCallbacks) {

window.WVJBCallbacks.push(_callback);

return;

}

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)

}

InitWebViewJavascriptBridge(function (bridge) {

productDetail = function (id) {

//注入handlerName为IOSEventClick

bridge.callHandler('IOSEventClick', {

code: id,

type: "productDetail",

}, function (responseData) {

// log('IOSEventClick', responseData);

})

}

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值