Fluwx 微信支付集成与使用

Fluwx 微信支付集成与使用

1.集成

在flutter 项目的pubspec.yaml 文件
 fluwx:
    git: https://github.com/OpenFlutter/fluwx.git

2.使用

fluwx.payWithWeChat(
     appId: payInfo.appId,
     partnerId: payInfo.partnerId,
     prepayId: payInfo.prepayId,
     packageValue: payInfo.packageValue,
     nonceStr: payInfo.nonceStr,
     timeStamp: int.parse(payInfo.timeStamp),
     sign: payInfo.sign
   ).then((data) {
     print(data);
   });
   fluwx.responseFromPayment.listen((WeChatPaymentResponse response) async {
     print("WeChatPaymentResponse"+response.errCode.toString());
     if(response.errCode == 0 )  {
       // 跳转到之前需要充值页面的地址
       print(pageInfo['fromPage']);
       print('=============');
       getIt().popUntil(ModalRoute.withName(pageInfo['fromPage']));
     }
     // eventBus.fire(new RefreshMineInfo(true));
     // Navigator.of(context).pop();
   });

3.android 原生配置

在flutter项目的android项目包名的路径下,创建wxapi目录,并在其目录下WXEntryActivity与WXPayEntryActivity

package com.example.yifan.wxapi;
import android.os.Bundle;
import android.widget.Toast;

import com.jarvan.fluwx.wxapi.FluwxWXEntryActivity;

import org.jetbrains.annotations.Nullable;

public class WXEntryActivity extends FluwxWXEntryActivity {
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}
}
​   package com.example.yifan.wxapi;
​   import com.jarvan.fluwx.wxapi.FluwxWXEntryActivity;
​   
    public class WXPayEntryActivity extends FluwxWXEntryActivity {
    
    }

​ 并在manifest清单配置文件里注册

    
    

4.使用中的问题

1.微信未能调起(状态码-1)
微信开发平台的后台设置应用签名与app的release版本jks签名不一致。
检查签名工具下载地址https://open.weixin.qq.com/zh_CN/htmledition/res/dev/download/sdk/Gen_Signature_Android.apk

应用签名与jks 的MD签名是一致的(只是MD签名码多了冒号:),可通过命令对比检查

keytool -v -list -keystore /Users/admin/AndroidStudioProjects/app.jks

微信支付开发文档:
https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5

你可能感兴趣的:(Fluwx 微信支付集成与使用)