公司作支付产品,现有个需求要经过APP调用小程序支付java
没搞过android的我 开始了一段新的旅程 BGMandroid
废话很少说 看下效果图 以下:git
经过APP打开小程序 而后起调 支付小程序
这里作的是将支付参数在起调小程序的时候 一并传给了小程序api
实现流程:微信
-
准备工做
- 微信开放平台申请好应用,以及小程序
- 应用和小程序须要进行绑定
- 小程序须要开通支付功能
- 开发准备:Androidstudio 微信开发者工具
-
安卓端和小程序端开发
- 安卓端开发
public void openApp(View view) { // TODO APP应用ID 需修改 String appId = "wx3516792fa36b***"; IWXAPI api = WXAPIFactory.createWXAPI(this, appId); WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req(); // 填小程序原始id // TODO 小程序的原始id 非APPID 需修改 req.userName = "gh_0073b5b*****"; //拉起小程序页面的可带参路径,不填默认拉起小程序首页 req.path = "pages/index/index?" + "timeStamp=1589178045"+ "&package=prepay_id=wx1114204644639756644f5ca31620199800"+ "&paySign=90F9A764631DCDAEAEB80BAEFD2A9EC8"+ "&appId=wxa0c327b6b5f5ab20"+ "&signType=MD5"+ "&nonceStr=yj9k086f553fegmjga94ovsaxxup0s4g"+ ""; // 可选打开 开发版,体验版和正式版 这里须要和小程序的版本对应,若是是经过微信开发者工具扫码调试的小程序 对应的是开发板 // 若是是已经上传到了小程序后台 那里对应的是体验版 req.miniprogramType = WXLaunchMiniProgram.Req.MINIPROGRAM_TYPE_TEST; api.sendReq(req); }
这是安卓调用的核心代码 微信开发
-
-
- 安卓端开发
-
小程序端开发app
-
-
测试
- 若是安卓端打包的是开发版本,小程序预览也须要对应开发版本,也就是在开发者工具上扫码预览的
-
源码
- 参考文章 http://www.javashuo.com/article/p-pnaniasq-nq.html
-
总结
-
总之坑多 多踩就行了测试
-