本文转载:http://blog.csdn.net/u014752325/article/details/53976422

目前在做一个用App加载H5网页,然后在网页中调起支付宝客户端支付,蚂蚁金服的开发文档上明确写有支付宝支持手机网站支付,所以那就集成呗,但是做完之后出现了一个问题,不知道是不是Android端集成出现了细节问题,然后再使用支付的时候,支付宝客户端具有一定的失败率,所以失败了只能采用收银台支付,虽然可以实现支付,但是体验方面还是达不到公司的要求。

在H5中启动支付宝我们可以看到这个界面

他说他在尝试打开,其实也就是在检测是否安装的支付宝客户端,但是不知道为什么,有时候会失败,然后就只能走收银台了,但是收银台是需要登录的,所以体验方面不是很好,但是我尝试在浏览器上访问url的时候,调起支付宝客户端就可以的,不会出现失败的情况,看来我们得想办法借用浏览器的能力来启动支付宝了。

本地用的是webview,所以拦截url还是比较方便的,通过打印url,发现有一个url是这样的alipays://platformapi/startApp?

这个就是检测的程序了,然后我们在WebView中加入这样一句话:

public boolean shouldOverrideUrlLoading(WebView view, String url) {if (url.contains("alipays://platformapi")) {Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));startActivity( intent );} else {view.loadUrl(url);}return false;
}

意图很明显,在检测是否安装支付宝的时候,借用浏览器的能力来启动支付宝,这样效果真的不错,然后你就会看见这样一个页面:

支付宝文档(官方权威解释)

用上述方式做完之后,感觉有点不安,感觉并不是使用正规的渠道来实现的,然后又看了看支付宝的APP支付文档,中间有一个功能叫做其他接入。

支付宝其实也早就准备了这个功能,但是唯一的区别就是,这个手机网站转原生的实现,我是借助了自带浏览器,而他的实现是webview和js进行交互,拦截url,然后交给支付宝的SDK去处理,原理还是离不开他的SDK,所以他的实现方式比我的这种要麻烦一点,但是绝对权威,这点毫无疑问,所以看自己怎么选择了。

WebView启动支付宝客户端支付失败相关推荐

  1. WebView支付宝wap支付转支付宝客户端支付

    android WebView支付宝wap支付转支付宝客户端支付重写WebViewClient的以下方法即可.可参考 支付宝平台文档商户APP的WebView处理alipays协议 public bo ...

  2. iOS H5原生WKWebView调起支付宝客户端支付方案

    iOS H5原生WKWebView调起支付宝客户端支付方案 问题描述: 安卓直接WebView加载上面的URL直接可完成跳转支付宝弹出支付界面: iOS WKWebView加载这个URL,只是单纯加载 ...

  3. 第三方应用调用支付宝客户端支付后不跳转回去的问题

    在Info.plist中添加如下配置 转载于:https://www.cnblogs.com/mforestlaw/p/5591283.html

  4. WebView调用微信H5支付

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

  5. 支付宝移动支付之IOSApp调用支付宝钱包

    最近客户提出要开发一个IOS上的app作为访问他们网站的途径之一,为什么说之一呢,因为目前PC和Mobile这两个站目前都已经上线了. 所以问题就简单了,我们只需要把mobile站UI修改一下,然后在 ...

  6. 【安卓学习之第三方库】 Rxpay学习:支付宝微信支付

    █ [安卓学习之第三方库] Rxpay学习:支付宝微信支付 █ 相关文章: [安卓学习之第三方库]库的使用2-jar类库的使用(以dom4j为例)和升级(以极光推送为例) [安卓学习之第三方库] 消息 ...

  7. 支付宝app支付功能-服务端的实现-python3版

    支付宝app支付功能-服务端的实现-python3版 一:需求说明 二:支付宝app支付处理流程 三:所需依赖 3.1 依赖库 3.2 支付配置 3.2.1 沙箱环境配置 3.2.2 正式环境配置 四 ...

  8. ios支付宝支付失败不回调_iOS支付宝H5支付无法返回APP解决方案

    本文只讨论你已经成功实现客户端->支付宝支付流程,仅仅是支付完成后无法返回自己的APP的问题. 如果你的支付流程是客户端->Safari->支付宝不在本文讨论范围之类. iOS支付宝 ...

  9. h5支付不能打开支付宝 ios_IOS H5支付调起微信支付宝客户端问题总结

    IOS H5支付调起微信支付宝客户端问题总结 很早之前公司的支付功能,通过H5去支付宝和微信支付,开始使用的是UIwebView来加载h5页面,当初只有支付宝网页支付形式,所以没有考虑到那么多,现在新 ...

最新文章

  1. 如何在node.js中发出HTTP POST请求?
  2. 累计占比_全国ETC用户累计突破1亿!广东占比超过1/10
  3. Python名称空间是什么?
  4. RPC框架(一)RPC简介
  5. sap.ca.ui.model.format.NumberFormat format logic for Globalization
  6. MongoDB发布4.0版本,支持ACID事务
  7. 阿里面试题剖析,如何保证消息不被重复消费?
  8. windows 2003 英文版支持中文显示、中文输入的设置方法
  9. vue-router学习第一天
  10. 浏览器软件下载,点击超链接、图标等直接下载(前后端代码)
  11. Windows 远程桌面(RDP)客户端相关工具
  12. python|文本文件的处理
  13. 多层次细节(Level of detail)
  14. 网络抓取ts文件转mp4_TS格式的视频文件怎么转换成mp4文件。
  15. html div 360旋转动画效果,分享4种CSS3效果(360度旋转、旋转放大、放大、移动)
  16. 极客时间「大师课·深度剖析 RocketMQ5.0」上线啦,欢迎免费领取!
  17. 操作系统 -- 处理器管理
  18. oracle分段时间统计总数,oracle中根据年份统计每月的总数?解决思路
  19. arduino声音传感器与二极管_怎样使用Arduino构建基于声音传感器的警报
  20. 穷举n位二进制数(深搜)noj

热门文章

  1. 使用nohup设置后台进程
  2. Simulink仿真踩坑
  3. Hadoop统计中文字数
  4. 机械师M7精英版鼠标控制驱动安装教程
  5. 东芝推出新系列低电压驱动光继电器
  6. 七牛 js JDK使用 - 上传APP 1
  7. 台式计算机家用推荐哪款,什么牌子的电脑好 2017家用台式电脑推荐
  8. 百无聊赖之JavaEE从入门到放弃(九)封装详解 多态详解
  9. 计算机模拟技术及应用发炮游戏模拟,电影讲计算机模拟游戏的片子
  10. Java经典面试题详解:抖音Java后端123面开挂