【HarmonyOS NEXT】鸿蒙应用接入微信支付
2025-06-30 23:23:03
105次阅读
0个评论
【HarmonyOS NEXT】鸿蒙应用接入微信支付
##鸿蒙开发能力 ##HarmonyOS SDK应用服务##鸿蒙金融类应用 (金融理财#
前言
1.接入微信支付,除了鸿蒙应用接入的工作量,还有服务器开发工作量。这里需要注意,如果你的应用,android ios版本没有接入过微信支付,那鸿蒙微信支付的工作量就不只是鸿蒙应用接入了。
2.微信支付接入,最麻烦的是需要在微信开放平台注册应用审核。如果你的应用在Android和 IOS都没有审核过,这里时间会比较长。微信开放平台地址
一、下载鸿蒙版微信开放SDK和示例DEMO
1.WeChat_Open_SDK:
2.官方示例DEMO下载 点击下载OpenSDK-1.0.0.zip
二、运行示例项目
微信的示例项目进行配置同步后,设置自动签名就可以直接运行成功,效果如下: 可以看到微信支付相关在,支付按钮,跳转到的页面中 Pay.ets
点击跳转支付,就会拉起微信,进入支付页。
但是支付参数如果不对,就会提示: 检查pay.ets类,配置的支付参数。并且需要在Constants.ets中进行配置:
微信开放平台需要注册你的鸿蒙应用,配置包名等信息。微信最麻烦的就是这个,没有提供一个测试id进行效果查看,只能先去注册你的应用。点击鸿蒙应用手册
三、copy支付相关代码进行接入
1.安装SDK依赖: sdk版本以三方库的最新版本为准,目前最新为1.0.11版本:
"dependencies": {
"@tencent/wechat_open_sdk": "1.0.11"
}
2.参考Pay.ets中的代码,copy【支付】相关代码:
import { OnWXResp, WXApi, WXEventHandler } from '../model/WXApiWrap';
import * as wxopensdk from '@tencent/wechat_open_sdk';
import { common } from '@kit.AbilityKit';
export const kRoute = "Pay"
@Entry({ routeName: kRoute })
@Component
struct Pay {
private wxApi = WXApi
private wxEventHandler = WXEventHandler
@State payResultText: string = ''
// 回调处理
private onWXResp: OnWXResp = (resp) => {
this.payResultText = JSON.stringify(resp ?? {}, null, 2)
}
aboutToAppear(): void {
// 注册的支付回调
this.wxEventHandler.registerOnWXRespCallback(this.onWXResp)
}
aboutToDisappear(): void {
this.wxEventHandler.unregisterOnWXRespCallback(this.onWXResp)
}
build() {
Column({ space: 20 }) {
Text("跳转支付").fontSize(20).fontWeight("bold").width('100%').padding(16)
Button("跳转支付").onClick(async () => {
// 组装支付订单参数,发送包裹给微信api,唤起微信。
let req = new wxopensdk.PayReq
req.partnerId = '2480306091'
req.appId = 'wx05b3e2e9fc730840'
req.packageValue = 'Sign=WXPay'
req.prepayId = 'wx26161523845794ecced251acf2b6860000'
req.nonceStr = 'vmall_240926161523_993_2774'
req.timeStamp = '1727338524'
req.sign = 'rAqsrx5yLfRNBGvlHYuLhUsNK0OPeOLQ5xlvhxFo9guPU4HeNtzRdPaGAXAzXvn7V5chVe8sj3BfvDgwXlCKctCcFIllOgheyZbZ7btFC++9bW0QTijhWo1hZ6LhvjcKQ1zf53RGX7zf7GBu9sheqWPKlWqJJzynBZo8UH5Wow9t/WK5fanNj6ST2U2zPQGxuCH+DBMOKJAhhaalrOXlqj+feEiz1bLAzEmhLzIREgcWJQyZmdI5VO0B8r11ND+o1iBYgoohDUuJc+bd9r6RvmZBSE+HqggWE4p3D0/NzY7mQH+51u0osfOfaTHVLqlUM3IMoXi1vH4a0Qrg1P6c0g=='
req.extData = 'extData'
// 发送操作是否成功
let finished = await this.wxApi.sendReq(getContext(this) as common.UIAbilityContext, req)
console.log("send request finished: ", finished)
}).width('80%')
Text(this.payResultText)
.width('80%')
.fontSize(17)
.lineHeight(20)
}
}
}
微信支付业务流程图 支付回调信息code:
00
- 1回答
- 0粉丝
- 0关注
相关话题
- 鸿蒙接入Flutter3.22
- 鸿蒙Next仿微信朋友圈图片排序删除
- 鸿蒙HarmonyOS从零实现类微信app基础界面搭建
- ArkUI-X跨平台框架接入指南
- 鸿蒙ArkTS+ArkUI仿微信消息列表页制作
- 仿微信登录页面制作
- 鸿蒙5.0如何快速接入端云一体化的认证服务
- HarmonyOS5 购物商城app(二):购物车与支付(附代码)
- 鸿蒙ArkTS+ArkUI仿微信通讯录页面制作【1】
- 鸿蒙ArkTS+ArkUI仿微信通讯录页面制作【2】
- 带你实现 OpenHarmony 微信聊天 01
- 带你实现OpenHarmony 微信聊天02
- HarmonyOSNext支付全栈攻略:IAP Kit无漏单秘籍+避坑指南
- 【HarmonyOS NEXT】鸿蒙应用使用lottie动画
- 从零到一教你在鸿蒙中实现微信分享--全流程