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 |
packageInstalled | name: String | 查询name APK是否安装 | 76 |
getVersionCode | 无参数 | 获取paynicorn pay versioncode | 76 |
AndroidDataBundleManager 模块
方法名 | 参数列表 | 用途 | versionCode |
---|---|---|---|
setTitle | title: 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'
}
}