H5与原生app交互
H5与原生app交互
原生调h5方法:
h5:注册方法,绑定在windowns上:如windown[方法名] = ()=>{}
h5调原生方法,需要区分安卓和ios
/** 获取设备系统类型 */
export const LoginPhoneType = () => {
var sUserAgent, isIOS, isAndroid, isIpad;
sUserAgent = navigator.userAgent.toLowerCase();
isIOS = sUserAgent.match(/iphone os/i) == 'iphone os';//|| deviceInfo.systemName === 'iPhone';
isAndroid = sUserAgent.match(/android/i) == 'android';//|| deviceInfo.systemName === 'Android';
isIpad = sUserAgent.match(/ipad/i) == "ipad";
if (isAndroid) {
return 'android';
} else if (isIOS || isIpad) {
return 'ios';
} else {
return null;
}
};
//调用原生app方法
export const getAddress = () => {
const jzbank = window.jzbank;
if (!window.webkit && !jzbank) return;
const platform = LoginPhoneType();
if (platform === "ios") window.webkit.messageHandlers.getAddress.postMessage();
else if (platform === "android") jzbank.getAddress();
};
// h5 注册的方法
window.getAddressResult=(res)=>{
console.log(res)
}
本文作者:张尊娟
本文链接:https://www.cnblogs.com/wszzj/p/17485999.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步