Android webViewj简单处理apk的下载链接

最近在开发二维码扫一扫的功能,需要分多种情况处理外部的url.遇到一个问题是,一些程序包(比如一些android应用)的下载不好处理。如果不做任何处理的话,webView会打开一个空白页。比如这个链接:http://www.weishi.com/download/index.php?pgv_ref=default
这个链接是执行一段JS代码,判断当前访问它的设备,定位到另一个地址。如果是pc或者IOS设备,会进入appstore下载地址,如果是android设备,会直接去下载一个apk,即跳转到这个地址http://dldir1.qq.com/dlomg/weishi/weishi_guanwang.apk
调研了下微信的扫一扫,是可以实现系统浏览器提示下载的。所以猜想是根据后缀.apk做的判断。

所以我的处理也是参考了这一点,代码:

@Override
	public boolean shouldOverrideUrlLoading(WebView view, String url) {
            	Log.d("","shouldOverrideUrlLoading->"+url);
            	if(url.endsWith(".apk")){
            		Uri uri = Uri.parse(url);
            		Intent viewIntent = new Intent(Intent.ACTION_VIEW,uri);
            		WebActivity.this.startActivity(viewIntent);
            		return true;
            	}
	}


原文地址:https://www.cnblogs.com/riasky/p/3483378.html