Bootstrap

vue H5与(Android、iOS)原生APP交互

一:JS调用APP

1、封装公共方法:

/**
 *js调用APP
 * @params {*} Obj  传给app参数
 */
export function JSToNativeAPP(params) {
    let isAndroid = navigator.userAgent.indexOf('Android') > -1 || navigator.userAgent.indexOf('Adr') > -1;
    let isiOS = !!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
    if (isAndroid) {
        window.android.JSToNative(JSON.stringify(params))
    } else {
        // window.webkit.messageHandlers.JSToNative.postMessage(params)
        JSToNative(JSON.stringify(params))
    }
}

2、使用(组件内引入):

import { JSToNativeAPP } from "@/utils";

 

二:APP调用JS

在mounted() 生命周期中接收  NativeToJS挂载在window上(和原生协议好所有调用h5均是次方法,通过接收到的code值来区分不同含义)

//
;