项目为了获得更多投资,就需要验证项目的商业模式;
投资人看中的是项目的赚钱能力,项目最直接的赚钱方式就是APP的付费功能,付费少不了支付。
需求:项目新增会员付费功能(微信支付,支付宝,IAP)
由于公司项目是Flutter开发的,所以要寻找一款支持以上三种支付方式的Flutter插件。
- pay支持Google Pay、Apple Pay;
- flutter_pay支持Google Pay、Apple Pay ;
- alipay_kit是一个对支付宝SDK封装的Flutter插件,支持支付宝登录,支付等功能;
- fluwx 是一个对微信SDK封装的Flutter插件,支持微信分享,登录,支付等功能;
- flutter_inapp_purchase是一个对IAP封装的Futter插件,仅支持IAP;
- huawei_iap是一个对华为应用内支付封装的Flutter插件,仅支持华为应用内支付;
- flutter_pay 支持微信支付、支付宝支付、IAP(iOS应用内支付)功能;
通过对比以上种Flutter插件,最终选择最后一个聚合支付插件——flutter_pay ,并在使用过程中将IAP本地验单调整为可配置选项!
分支说明
master 分支,包含当前所有的支付方式
IAP 分支,iOS只有内购,去掉微信和支付宝。安卓依旧有微信、支付宝
alipay_noutdid,处理支付宝SDK utdid冲突,如果报错utdid冲突使用这个分支,该分支保留所有支付
IAP_no_wechat 分支,iOS只有内购,去掉微信和支付宝。安卓只有支付宝
因为iOS无需微信支付、支付宝支付,所以选用IAP分支,
pubspec.yaml配置:
flutter_pay:
git:
url: "https://gitee.com/davis4v/flutter-pay.git"
ref: "IAP"
项目中集成了微信的分享功能,由于微信分享使用的是另一个插件fluwx_no_pay,最终选择微信分享、微信支付都通过插件fluwx_no_pay
1)分享和支付的回调统一通过fluwx_no_pay处理!
2)防止多个插件引用的微信SDK版本不同导致冲突
fluwx_no_pay 分支说明:ios 无微信支付,android依旧有微信支付。
最终pubspec.yaml配置如下:
flutter_pay:
git:
url: "https://gitee.com/davis4v/flutter-pay.git"
ref: "IAP_no_wechat"
#ios 无微信支付,android依旧有
fluwx_no_pay: ^3.13.1
以上配置根据项目实际情况调整!