1、首先获取设备环境:
var sUserAgent = navigator.userAgent.toLowerCase();
var bIsAndroid = sUserAgent.match(/android/i) == "android";
var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";
2、webview发送方法给原生APP,原生APP内做出对应操作,可传值可不传值:
原生与前端协商好方法名:(sendData)
IOS:
var data = { // 发送给原生APP的数据
name:"yang",
age:27
}
window.webkit.messageHandlers.sendData.postMessage(data);
安卓:
var data = { // 发送给原生APP的数据
name:"yang",
age:27
}
App.sendData(data); // APP这个对象名由安卓提供
3、webview调用原生APP提供的方法(先约定好方法名 getData):
PS一下:直接在H5页面上写上这个方法,在方法内操作数据即可,无需执行:getData()
IOS:
function getData(data) {
console.log(data)
}
安卓:
function getData(data) {
console.log(data)
}