h5与navite交互

H5调用navite方法

navite提供统一的入口方法xdpxNavite,h5提供对应调用navite方法callNavite :

/// body是map类型
function callNavite(body) {
    var platform = 'ios'
    if (platform == 'ios') {
        window.webkit.messageHandlers.xdpxNavite.postMessage(body);
    }else if(platform == 'andriod') {
        window.xdpxNavite.jsMethod(body)
    }
}
 

body说明

字段 类型 必填 描述 示例值
method string navite方法名 getToken
paramsStr string 对应方法的参数json串 '{"autoSellerId":100}'
callback string h5方法名 onReceiveToken

Navite调用H5方法说明

navite调用h5提供的callback方法只传一个string类型的数据,以onReceiveToken方法为例:

/// 单个参数
function onReceiveToken(token) {
    console.log(token)
}

/// 多个参数时传json串
function onReceiveToken(tokenMapStr) {
    var tokenMap = JSON.parse(tokenMapStr)
    console.log(tokenMap.token)
}

callNavite示例

// token回调
function onReceiveToken(token) {
    console.log(token)
}

// 获取token
var tokenBody = {
        method:'getToken',
        callback:'onReceiveToken'
    }
callNavite(tokenBody)

// 调用分享功能
var shareParams = {
    title:'心动配讯',
    content:'汽配采购神器'
}

var shareBody = {
        method:'share',
        paramsStr:shareParams.toJSONString()
    }
callNavite(shareBody)

你可能感兴趣的:(h5与navite交互)