跳到主要内容

H5 版小程序接入

对接准备

  • 应用的 url 地址(测试环境和生产环境)

通用接口

接口通用结构

H5 应用通过 WebView 以 jsbridge 的方式与 paynicorn app 通信

web 向 native 发送信息

const data = {
action: 'moduleName.methodName', // 方法名
payload: {
arg1: 1,
arg2: 2
} // 参数
}
window.ReactNativeWebView.postMessage(JSON.stringify(data))

web 接收 native 信息, 通过监听 message 事件订阅 native 发送来的数据

window.document.addEventListener('message', function (e) {
const message = JSON.parse(e.data)
// message.action
// message.payload
})

AndroidDataDeviceManager 模块

方法名 参数列表 用途 versionCode
closeActivity 无参数关闭当前小程序 61
packageInstalledname: String 查询name APK是否安装 76
getVersionCode无参数 获取paynicorn pay versioncode 76

AndroidDataBundleManager 模块

方法名 参数列表 用途 versionCode
setTitletitle: String 设置原生标题栏 61
getBundleInfo 无参数 获取bundle 配置信息 62

AndroidDataPayManager 模块

方法名 参数列表 用途 versionCode
startPayment txnId: String 启动原生收银台 61
topUp currency: String , amount: String 启动原生充值功能 61

AndroidDataAccountManager 模块

方法名 参数列表 用途 versionCode
getAuthCode sdkkey: String, callback: Callback 启动原生oauth认证,获取authcode 61
getLoginCode 无参数获取单次登录后的loginCode,判断用户是否重新登录过了 61
selectContact callback: Callback 启动原生选择联系人列表,获取联系人姓名和电话 90
selectFriend callback: Callback 启动原生选择好友列表,获取好友名字和电话 90
selectCountry filter: Array, callback: Callback 启动原生选择国家列表,选取国家filter 国家过滤器 如:["USA","AIA","ATG"]。 alpha-3 码 https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes 89

demo

const data = {
action: 'AndroidDataPayManager.startPayment', // 方法名
payload: {
txnId: '1234567898765',
} // 参数
}
window.ReactNativeWebView.postMessage(JSON.stringify(data))
window.document.addEventListener('message', function (e) {
const receivedData = JSON.parse(e.data)
// receivedData.action
// receivedData.payload
})

receivedData 数据的结构

  receivedData = {
action: 'AndroidDataAccountManager.getAuthCode',
payload: {
data: 'ijyuisafa122919asdfaf'
}
}