需求
使用flutter的情况下用fluwx调通微信支付,使用的是fluwx的包,代码量不多,复杂的是安卓和ios的各种配置。
环境
flutter 1.9.1
fluwx 1.2.1+1
使用方法
引入fluwx,然后注册微信api
fluwx.registerWxApi(
appId:"wx0axxxxxxxxxx3edb",
universalLink:"https://www.baidu.com/"
);
调用支付,参数由后端写好接口请求得到
fluwx.pay(
appId: wechatParams["appid"],
partnerId: wechatParams["partnerid"],
prepayId: wechatParams["prepayid"],
packageValue: wechatParams["package"],
nonceStr: wechatParams["noncestr"],
timeStamp: wechatParams["timestamp"],
sign: wechatParams["sign"],
extData: 'test'
);
监听支付的回调
fluwx.responseFromPayment.listen((data) {
print('支付回调通知。。。。。。’);
if(data.errCode == 0){
print('支付成功');
}else{
print('支付失败');
}
代码见上,其他安卓和ios的配置见下文
IOS的配置
iOS的微信支付的官方配置文档
详细的再官方文档都有介绍,建议先看一遍官方文档,以下是我总结的几个步骤:
- 配置项目的Universal Links,同时和微信公众平台配置的保持一致
- Xcode打开Associated Domains开关,将Universal Links域名加到配置上
- 检查有没有WechatOpenSDK,没有的话用CocoaPods 集成
- 在 Xcode 中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type“添加“URL scheme”为你所注册的应用程序 id
- 在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在 “info”标签栏的“LSApplicationQueriesSchemes“添加weixin 和weixinULAPI(重要)
- ios配置结束,可以打包出来看效果
安卓的配置
安卓的微信支付官方配置文档
详细的再官方文档都有介绍,建议先看一遍官方文档,以下是我总结的几个步骤:
- 在 build.gradle 文件中,添加如下依赖即可
dependencies {
api 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'
}
- 并在 AndroidManifest.xml 文件里面加上 exported 属性,设置为 true
<activity
android:exported="true”>
</activity>
-
获取应用的签名,同时更新到微信开放平台,确认两边的签名和应用id一致,(官方获取安卓APP签名的应用,最下面有个签名生成工具
-
安卓配置成功,可以打包出来看看效果
网友评论