WebView H5 跳转微信支付、支付宝、QQ钱包WAP

简介:       最新小菜在用研究借助 WebView h5 跳转 微信和支付宝支付页面,研究了挺久,一直没有找到合适的判断。很简单的两小段代码分享一下,希望可以帮助需要的朋友。

      最新小菜在用研究借助 WebView h5 跳转 微信和支付宝支付页面,研究了挺久,一直没有找到合适的判断。很简单的两小段代码分享一下,希望可以帮助需要的朋友。

      目前小菜是借助的 TBS X5 浏览器内核的 WebView,原理是一样的。主要是对url内容的判断,以下是关键代码部分,大家一看便了解:

      可以支持的包括:微信扫码、微信--手机快捷支付、支付宝扫码、支付宝--手机快捷支付、QQ扫码、QQ钱包(WAP)

mWebView.setWebViewClient(new WebViewClient() {

    @Override

    public boolean shouldOverrideUrlLoading(WebView view, String url) {

    final Activity context = AdvertX5Activity.this;

    // ===========调用微信支付页面===========

    // 如下方案可在非微信内部WebView的H5页面中调出微信支付

    if(url.startsWith("weixin://wap/pay?") || url.startsWith("weixin")|| url.startsWith("wechat")) {

        try{

             context.startActivity(newIntent("android.intent.action.VIEW", Uri.parse(url)));

        }catch(Exception e) {

             e.printStackTrace();

        }

        return true;

    }

    // ===========调用QQ钱包页面(mqqapi测试效果作用较大)===========

    if(url.startsWith("mqqapi") || url.startsWith("mqqwpa")) {

        try{

            context.startActivity(newIntent("android.intent.action.VIEW", Uri.parse(url)));

        }catch(Exception e) {

            e.printStackTrace();

        }

        return true;

    }

    // ===========调用支付宝支付页面===========

    // ------  对alipays:相关的scheme处理 -------

    if(url.startsWith("alipays:") || url.startsWith("alipay")) {

    try {

        context.startActivity(new Intent("android.intent.action.VIEW", Uri.parse(url)));

    } catch (Exception e) {

        new android.support.v7.app.AlertDialog.Builder(context)

.setMessage("未检测到支付宝客户端,请安装后重试。")

.setPositiveButton("立即安装", new DialogInterface.OnClickListener() {

    @Override

    public void onClick(DialogInterface dialog, int which) {

        Uri alipayUrl = Uri.parse("https://d.alipay.com");

        context.startActivity(new Intent("android.intent.action.VIEW", alipayUrl));

    }

}).setNegativeButton("取消", null).show();

}

return true;

}

    // ------- 处理结束 -------

    if (!(url.startsWith("http") || url.startsWith("https"))){   return true;    }

    return false;

}

    @Override

    public void onPageStarted(WebView webView, String s, Bitmap bitmap) {

        super.onPageStarted(webView, s, bitmap);

    }

    @Override

    public void onPageFinished(WebView view, String url) {

        super.onPageFinished(view, url);

    }

});


QQ扫码

微信扫码

支付宝扫码

微信-手机快捷支付

QQ 钱包
目录
相关文章
|
26天前
|
移动开发 小程序
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
55 3
|
2月前
|
Web App开发 移动开发 前端开发
H5微信外支付(移动端浏览器)
H5微信外支付(移动端浏览器)
49 1
 H5微信外支付(移动端浏览器)
|
2月前
|
程序员 开发工具 Android开发
Android|WebView 禁止长按,限制非白名单域名的跳转层级
如何限制 WebView 仅域名白名单网址能随意跳转,并禁用长按选择文字。
44 2
|
2月前
|
应用服务中间件 网络安全 Apache
Discuz! X3.5 开启ssl证书加密后微信、公众号无消息、支付宝通讯中断等
Discuz! X3.5 开启ssl证书加密后微信、公众号无消息、支付宝通讯中断等、支付宝支付实际支付成功,显示未支付等,都属于通讯中断,需要联系DZ官方付费修改程序,屏蔽防CC!
63 4
|
2月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
333 3
|
4月前
|
小程序
微信小程序多种跳转页面方式
微信小程序多种跳转页面方式
|
2月前
|
移动开发 小程序 数据可视化
一招学会DIY官网可视化设计支持导出微擎、UNIAPP、H5、微信小程序源码
一招学会DIY官网可视化设计支持导出微擎、UNIAPP、H5、微信小程序源码
51 2
|
3月前
|
小程序 开发工具
app跳转微信小程序,使用明文scheme拉起
app跳转微信小程序,使用明文scheme拉起
713 4
|
5月前
|
存储 移动开发 Android开发
使用kotlin Jetpack Compose框架开发安卓app, webview中h5如何访问手机存储上传文件
在Kotlin和Jetpack Compose中,集成WebView以支持HTML5页面访问手机存储及上传音频文件涉及关键步骤:1) 添加`READ_EXTERNAL_STORAGE`和`WRITE_EXTERNAL_STORAGE`权限,考虑Android 11的分区存储;2) 配置WebView允许JavaScript和文件访问,启用`javaScriptEnabled`、`allowFileAccess`等设置;3) HTML5页面使用`<input type="file">`让用户选择文件,利用File API;
|
4月前
|
移动开发 前端开发 JavaScript