前阶段我做的h5支付(微信/支付宝),各个功能都弄好了,可以使用了,但是,我们总监让我把这个h5支付移植到我们前阶段做的web app中,这一下子,让我懵逼了。带着懵逼的心情,苦逼的看代码吧。在进行支付的时候,本来就分的有app支付的sdk,现在一下子把h5支付的sdk,弄到app里面,这不是很扯吗?

然而还是要干活滴,好了,问题来了,开始分析问题:解决app支付?有两种方式。

第一种:去官网下载app支付的sdk,弄app的sdk,可是在弄app支付的sdk的时候,需要两个sdk啊,客户端sdk和服务器端sdk。两个啊,这是很痛苦的。本来Android看着就烦,算了先不想这个。

第二种:就是把h5支付的sdk,移植到app,里面,可是支付的时候,调用不起来微信客户端和支付宝客户端啊。但是想想,现在好多是app都是webapp加载的,肯定有h5支付,别人能做,为啥我就不能尼?带着干劲投入进百度中,生活总是会给你无限的希望滴。下面是解决办法:

我们在进行app开发的时候,用的都是webview加载网页来进行页面展示,在进行webview初始化的时候,需要初始化webviewClient,然而webViewClient就是处理各种通知,请求事件的,所以我们可以在这里面来重写里面的shouldOverrideUrlLoading方法来支持我们的h5支付:

/设置具体的webViewClient
webView.setWebViewClient(new MyWebViewClient(webView));
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {try {url = URLDecoder.decode(url, "UTF-8");} catch (UnsupportedEncodingException e) {e.printStackTrace();}//微信h5支付支持if (url.startsWith("weixin://wap/pay?")) {Intent intent = new Intent();intent.setAction(Intent.ACTION_VIEW);intent.setData(Uri.parse(url));startActivity(intent);return true;}//支付宝h5支付支持if (url.contains("alipays://platformapi")) {Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));startActivity(intent);return true;}return super.shouldOverrideUrlLoading(view, url);
}

这样我们在webview中加载h5支付的时候,就可以了。本来以为很难,没想到就是拦截的问题。所以我们在遇到问题时候,要仔细分析。还要记住一点,我们目前遇到的问题,网上肯定都有解决办法,而我们要做的就是冷静的分析。就比如这个web app支付加载h5支付的时候,别人肯定有人做的支付是在webview中加载的,所以这个问题是有解决办法的。其次就是我们对待问题要,找关键词,然后才能不浪费时间在百度中大海捞针。

												

web app中支付问题相关推荐

  1. outlook服务器信息查看器,允许最终用户在 Outlook Web App 中查看 POP3、IMAP4 和 SMTP 服务器设置...

    允许最终用户在 Outlook Web App 中查看 POP3.IMAP4 和 SMTP 服务器设置 2021/6/1 本文内容 适用于:Exchange Server 2013 如果您有使用 PO ...

  2. 微信小程序解析渲染Web App中的富文本内容

    前提:微信小程序里面没有DOM对象,不能直接操作DOM. 问题:在日常的web前端开发中,必然会接触到富文本编辑器,如何在小程序里展示渲染富文本编辑器中的HTML元素呢? 测试内容:wangEdito ...

  3. web app中常用插件(zepto--用法类似于jquery、利用nodejs定制zepto)

    1.移动端开发不用jquery的原因 jquery使用的优点中很大一个原因是解决了js的兼容性,但是在移动端开发中移动端的浏览器都很新进的浏览器,他的兼容性问题不需要jquery,所以不用考虑兼容性, ...

  4. web app、native app、hybrid app之间的差异

    目前主流应用程序大体分为三类:Web App.Hybrid App. Native App. 一.Web App.Hybrid App.Native App 纵向对比 首先,我们来看看什么是 Web ...

  5. Web App、Hybrid App与Native App的设计差异

    目前主流应用程序大体分为三类:Web App.Hybrid App. Native App. 一.Web App.Hybrid App.Native App 纵向对比 首先,我们来看看什么是 Web ...

  6. okta-spring_通过Okta的单点登录保护Spring Boot Web App的安全

    okta-spring "我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多 ...

  7. 通过Okta的单点登录保护Spring Boot Web App的安全

    "我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证. 您可以使 ...

  8. vue理由设置_在你的下一个Web应用中使用Vue.js的三个理由

    Vue.js是那么地易上手,它在提供了大量开箱即用的功能的同时也提供了良好的性能.请继续阅读以下事例及代码片段以便更加了解Vue.js. 选择一个JavaScript框架真是太难了--因为有太多的框架 ...

  9. 聊聊Web App、Hybrid App与Native App的设计差异

    目前主流应用程序大体分为三类:Web App.Hybrid App. Native App. 一.Web App.Hybrid App.Native App 纵向对比 首先,我们来看看什么是 Web ...

最新文章

  1. Python Qt GUI设计:窗口之间数据传递(拓展篇—5)
  2. java请求慢_为什么重复的GET请求变慢了?
  3. elasticsearch 后置过滤器(Post Filter)
  4. 云炬随笔20170201
  5. VTK:几何对象之Hexahedron
  6. *【HDU - 4006】 The kth great number(优先队列 or 线段树)
  7. python代码封装加密_静态编译python源代码,使用Nuitka加密你的py源码
  8. 年前辞职-WCF入门学习(5)
  9. 如何将php文件通过后台导入,如何将通过url传到php后台的json在后台再次转换为json格式?...
  10. 计算机WORD列宽行高怎么设置,高会《职称计算机》Word 2007:设置行高和列宽
  11. 睡后收益 -- CSDN博客打赏功能及自定义模块以及代码分享
  12. 开源软件,自由软件,免费软件三者的区别
  13. 一文读懂人脸识别技术
  14. Elasticsearch概念
  15. Windowsnbsp;XP/Vista/Windows7常见蓝…
  16. origin绘图软件中文版下载安装教程
  17. RSA-公钥加密,私钥解密 、私钥加密,公钥解密、私钥加签,公钥验签
  18. api质量等级_让人懵逼了、API标准与ACEA标准有啥区别 ?
  19. linux命令gunzip,Linux 中的gunzip命令
  20. Educoder/头歌JAVA——CSS从入门到精通——基础知识

热门文章

  1. 用安卓手机连接网站服务器,安卓手机连接云服务器
  2. 小米OJ 119(小米兔跳格子)
  3. LeetCode 488 Zuma Game 解题报告
  4. OpenWrt:异常启动处理
  5. 自动售卖机的类型和工作流程分析
  6. 计算机管理策略设置,windows10系统管理员设置了系统策略解决方法介绍
  7. 广域网技术(二层封装技术)
  8. Win软件 - Logitech G HUB 鼠标 DPI 突快突慢解决方案
  9. 携程二十,尚能战否?
  10. linux系统自动校时设置,linux系统自动校时