h5混合开发 与app 交互方法

35 篇文章 0 订阅

安卓

安卓相对简单 因为 安卓可以获取到我们h5页面内的window对象

所以  

// h5 调用安卓方法
window.discovery.gotoLogin();  // window.x.y  (x类名,y方法名)
// 安卓调用h5方法
h5 只需要在  js中声明 方法即可 安卓即可调用
function login(){}  

ios

ios 我这里分为2版本

// h5调用 ios

// uiwebview 利用 iframe 方式
function loadURL(url) {
        var iFrame;
        iFrame = document.createElement("iframe");
        iFrame.setAttribute("src", url);
        iFrame.setAttribute("style", "display:none;");
        iFrame.setAttribute("height", "0px");
        iFrame.setAttribute("width", "0px");
        iFrame.setAttribute("frameborder", "0");
        document.body.appendChild(iFrame);
        // 发起请求后这个iFrame就没用了,所以把它从dom上移除掉
        iFrame.parentNode.removeChild(iFrame);
        iFrame = null;
}
然后  js  调用 loadURL("login:gotoLogin")  IOS 拦截后 进行字符串解析

// wkwebview   利用postmessage
window.webkit.messageHandlers.xxxx.postMessage({type:"pushback"});

// ios 调用h5 依然是在window下 创建一个方法  ios 即可获取调用

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值