Webview调用支付宝客户端

在webview中要调用支付宝客户端,如果知道做或者做过的可能觉得很简单。但是我根本没做过。对webview也不熟悉第一次用。
所以就做个笔记了,以后或许还能用到
写Webview的都要用到这个吧:

 webview.setWebViewClient(new WebViewClient(){

            }

webviewWebViewClient作用就是帮助WebView处理各种通知、请求事件的,具体来说包括:

onLoadResource   

onPageStart   

onPageFinish   

onReceiveError   

onReceivedHttpAuthRequest   

shouldOverrideUrlLoading

在这里我们只要重写shouldOverrideUrlLoading方法:

webview.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {

                    view.loadUrl(url);

                return true;
            }

调用支付宝就是在这里写的:

webview.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                if(parseScheme(url)){ 
                    Uri uri = Uri.parse(url); 
                    Intent intent =new Intent(Intent.ACTION_VIEW, uri);
                    startActivity(intent);
                } 
                else{
                    view.loadUrl(url);
                }
                return true;
            }

parseScheme是干嘛的呢?就是判断该连接是否为支付宝网址如果是就调用支付宝客户端。
parseScheme:

public boolean parseScheme(String url)
    {
        if(url.contains("https://mapi.alipay.com"))
        {

            return true;
        }
        else{

        return false;
        }
    }

https://mapi.alipay.com是支付宝官网。代码很好理解就是当前url连接中是否带有“https://mapi.alipay.com”这短字符。如果有就说明是调用支付宝了,然后我们就打开支付宝客户端。

这段代码就是调用支付宝客户端了

Uri uri = Uri.parse(url); 
                    Intent intent =new Intent(Intent.ACTION_VIEW, uri);
                    startActivity(intent);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值