关于使用webView调起微信h5支付的问题

本文介绍了在Android应用中使用WebView实现微信H5支付时遇到的问题及解决方案。在Android 7.0系统上,由于操作系统拦截导致无法正常调起微信API。通过覆盖WebViewClient的shouldOverrideUrlLoading方法,并添加相应处理代码,可以成功解决这个问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近根据公司项目需求 要在android内支持微信h5的支付功能,一时间就想到用webView直接调起。所以很快试了一下,用简单的几行代码就实现了这个需求。但是偶然间拿到一部android 7.0系统的手机,结果在测试过程中发现总是调不起来微信的api,搞了好半天不知道什么原因。最后发现貌似是操作系统把url给拦截了,所以就添加了一下代码

  1. mWebView.setWebViewClient(new WebViewClient(){  
  2.         @Override  
  3.         public boolean shouldOverrideUrlLoading(WebView view, String url) {  
  4.             if( url.startsWith("http:") || url.startsWith("https:") ) {  
  5.                 return false;  
  6.             }  
  7.    try{
  8.             Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));  
  9.             startActivity( intent );  
  10.    }catch(Exception e){}
  11.             return true;  
  12.         }  
  13.     });  
成功解决问题!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值