一、需求背景

H5现在承载着很多的需求活动,要想在h5界面中做支付可以使用js调用原生的支付也可以使用Android webview做支付。微信H5支付官网

二、接入微信H5支付流程

1、用户在商户侧完成下单,使用微信支付进行支付

2、由商户后台向微信支付发起下单请求(调用统一下单接口)注:交易类型trade_type=MWEB

3、统一下单接口返回支付相关参数给商户后台,如支付跳转url(参数名“mweb_url”),商户通过mweb_url调起微信支付中间页

4、中间页进行H5权限的校验,安全性检查

5、如支付成功,商户后台会接收到微信侧的异步通知

6、用户在微信支付收银台完成支付或取消支付,返回商户页面(默认为返回支付发起页面)

7、商户在展示页面,引导用户主动发起支付结果的查询

8、商户后台判断是否接收到微信侧的支付结果通知,如没有,后台调用我们的订单查询接口确认订单状态(查单实现可参考:支付回调和查单实现指引)

9、展示最终的订单支付结果给用户

三、代码实现

webview要做的其实就是拿到mweb_url,在加载支付链接的时候在header中加入referer其实就可以了

val headers: MutableMap<String, String> = HashMap()
headers["Referer"] = "https://xxx.xxx.com"
mPayWebView.loadUrl(wxPayUrl, headers)

Android 微信h5支付相关推荐

  1. Android 应用内微信 H5 支付

    一般情况下,要实现应用内支付接入 App 支付 SDK 即可满足业务需求,不过考虑到对于一些类似游戏中心的场景,更多是需要支持 H5 支付.相对微信来说,支付宝的对接简单完善很多,所以本篇文章主要说说 ...

  2. php根据浏览器调用支付_Android通过外部浏览器调用微信H5支付,Android+PHP详解

    看了好多关于讲解微信H5支付开发的文章,大多数都是通过微信内部浏览器来调用支付接口(其实就是公众号支付),可能是因为H5支付接口刚开放不久吧. 微信官方体验链接:http://wxpay.wxutil ...

  3. Android中使用微信H5支付时支付结果刷新问题

    目录 前言: 1.查找资料: 2.解决问题的思路: a.核心逻辑就是截取回调地址,截图如下: b.设置isWxPay为true c.用户支付取消.失败.成功返回App时刷新界面: 3.通过以上几步解决 ...

  4. uniapp app内使用微信H5支付

    最近app项目中使用到了微信H5支付,新建webview页面直接跳转链接出现以下页面 查看文档后发现可能是缺少referer, orderbuyNow() {wxpay(this.formData). ...

  5. WebView调用微信H5支付

    相关文章:WebView启动支付宝客户端支付失败的解决办法 好长时间没有写博客了,感觉自己颓废了不少,这也取决于移动端逐渐趋于稳定的原因,随着自己公司业务的不断扩大,还是会遇到种种问题,最近手上一个需 ...

  6. 记录下关于微信h5支付那点事儿(百分之80拷贝官方)

    LZ-Says:困意上来,感觉简直痛不欲生~ 生亦何欢~!!! 前言 这俩天在玩微信的H5支付,不得不说,腾讯出品,Enmmm,懂就好... 原想着这是一件很easy的东西,WebView加载一个地址 ...

  7. h5支付不能打开支付宝 ios_iOS 解决微信h5支付,支付宝h5支付无法直接返回APP的问题...

    由于公司的业务需要,为了节省申请开通微信支付的时间和人力,公司决定使用微信h5支付.这样即节省了时间,同时以后所有的APP都能使用h5支付,既方便又快捷. 但是真正做的时候问题来了,当你支付成功之后或 ...

  8. 解决iOS微信H5支付跳转微信后不返回App问题(Swift-WKWebview)(转)

    解决iOS微信H5支付跳转微信后不返回App问题(Swift-WKWebview)(转) 参考文章: (1)解决iOS微信H5支付跳转微信后不返回App问题(Swift-WKWebview)(转) ( ...

  9. app 访问h5 如何截取_微信H5支付申请相关问题

    之前的文章「微信支付申请相关问题」里说过微信公众号和 APP 申请微信支付,今天来说下微信 H5 支付的申请. 背景介绍 H5 支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认 ...

最新文章

  1. vs2010 学习Silverlight学习笔记(7):控件样式与模板
  2. spring boot+oracle数据库配置成功
  3. html单行注释符号
  4. python安装路径怎么找-Python---查看安装路径
  5. amap vueamap 与_在vue中使用高德地图vue-amap
  6. 《动手学深度学习》 第二天 (自动求梯度)
  7. 我们和全球的朋友一起回家
  8. LwIP之ICMP协议
  9. 故意向Linux内核提交漏洞被全线拉黑?华人教授行为引众怒
  10. Linux中,Tomcat安装
  11. 【袋鼠云内推】杭州-高级java开发-3~5以及5年以上
  12. 七月算法机器学习1 机器学习初识
  13. 计算机桌面文件自动备份取消,电脑如何取消自动备份_电脑怎么取消自动备份...
  14. linux离线安装flex,Flexbuilder 3在Linux下安装
  15. QListView text动态显示
  16. VUE调用打印机打印页面
  17. Selenium元素定位方法总结
  18. 流利阅读12.17 Why are the 'yellow vests' still protesting in France? His name is Macron
  19. 关于sp和unity近似的PBR的一篇国外文章
  20. MacBook Pro 时间机器备份(完美解决连接移动硬盘无反应)

热门文章

  1. js中判断数据类型的方法
  2. 红米4 android 8,【红米4(标准版) 安卓6.0.1线刷包】MIUI V8.1.4.0.MCECNDI稳定版 可解账号锁...
  3. excel 怎么自动往下生成编号
  4. 解决edge浏览器无法打开pdf文件问题
  5. GIS地图基础知识--入门教程
  6. Pdf.js 解决电子印章问题
  7. 他一个人干掉了5个装甲军
  8. Java课程设计_java课设
  9. 推荐一款免费的内网穿透工具ngrok
  10. 申请免费SSL证书(阿里云)