1.通常情况下 大家可能都想使用WebView打开网页内部链接而不想再调用手机浏览器,我们可以通过以下两种方法实现:

(1)为WebView设置一个WebViewClient,并重写shouldOverrideUrlLoading(WebView view, String url)方法。

  1. class MyWebViewClient extends WebViewClient {
  2. @Override
  3. public boolean shouldOverrideUrlLoading(WebView view, String url){
  4. // 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
  5. view.loadUrl(url);
  6. return true;
  7. }
  8. }

(2)为WebView设置一个WebViewClient,并重写onPageStarted(WebView view, String url, Bitmap favicon)方法。

  1. class MyWebViewClient extends WebViewClient {
  2. @Override
  3. public void onPageStarted(WebView view, String url, Bitmap favicon) {
  4. // TODO Auto-generated method stub
  5. super.onPageStarted(view, url, favicon);
  6. }
  7. }

这两种方法其实都是让参数view(WebView)加载参数url从而避免手机浏览器加载url,第一种方式更常用一些。

2.但有些情况下  我们可能想用WebView打开大部分链接,而有些链接我们希望调用手机浏览器来打开,我最近的一个项目中就有这样的需求。这样其实也很简单,我们只需要对上面第一种方法加以修改即可。

  1. class MyWebViewClient extends WebViewClient {
  2. @Override
  3. public boolean shouldOverrideUrlLoading(WebView view, String url) {
  4. // 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
  5. if (openWithWevView(url)) {
  6. view.loadUrl(url);
  7. }else{
  8. Uri uri = Uri.parse(url); //url为你要链接的地址
  9. Intent intent =new Intent(Intent.ACTION_VIEW, uri);
  10. startActivity(intent);
  11. }
  12. return true;
  13. }

其中openWithWevView(url)是自己写的一个方法,用来判断是否用WevView打开该链接。

关于用WebView或手机浏览器打开连接问题的更多相关文章

  1. 不使用webview,用手机浏览器的android app

    需求:wap站在手机上以App的形式打开,但不要嵌套WebView,只能以浏览器打开 package com.gzz.whyinzi; import android.net.Uri; import a ...

  2. 手机端用swiper组件 轮播图设置后右侧出现空白 及 部分手机浏览器打开网页空白

    我的方法是设置内容css overflow:hidden;width:100%; ok. 之前搜到一个方法也可以,就是设置css height: auto;overflow-y: scroll; 但是 ...

  3. 通过手机浏览器打开APP或者跳转到下载页面.md

    目录 通过手机浏览器打开APP或者跳转到下载页面 添加 schemes 网页设置 参考链接 通过手机浏览器打开APP或者跳转到下载页面 以下仅展示最简单的例子及关键代码 由于硬件条件有限,仅测试了 A ...

  4. 拦截webview调用系统浏览器打开链接

    给WebView设置自定义的WebViewClient即可 webview.setWebViewClient(new WebViewClient(){ @Override public boolean ...

  5. 解决网页在手机浏览器打开不停刷新的方案(百度的ua自动转向js问题)

    一:发现问题 原有可能是网站内挂了一个百度的ua自动转向js,手机访问的话会被自动转到feiyujd.com,然后又被转到www点feiyujd点com,这样反复死循环.就形成了一直在刷新,网站一闪一 ...

  6. Vue 使用swiper4导致ie或手机浏览器打开空白的问题

    from:https://segmentfault.com/a/1190000015831092 在ie下发现就是swiper的不兼容,一加上去ie就不显示了.结果是swiper版本的问题,最新的sw ...

  7. 微信中打开链接,自动打开外部浏览器打开指定URL页面

    上半年公司有一个新的APP项目上线,我们在项目首页做个二维码,然后用户用手机扫一扫就能下载了.但是很多用户反映扫一扫之后下载不了,了解之后才知道这些用户都是使用的微信的扫一扫,而我们开发测试人员一般使 ...

  8. 阿里云阿里免费ssl wap网站在手机微信、手机浏览器无法访问

    图片可以访问,样式无法显示 https://css.cnbuses.com/css/wap/gonggong.css 1,怀疑是开了代理访问. 关闭后还是访问空白. 2.在手机浏览器打开,提示该网站的 ...

  9. java+selenium-3.9.1多线程 打开连接截取屏幕截图

    废话不多说上代码:(我是用的chrome举得例子哈) 第一步,需要chromedriver.exe 目的和调起chrome 浏览器打开连接,chromedriver.exe的版本与你的chrome版本 ...

随机推荐

  1. [Javascript AST] 1. Continue: Write a simple Babel plugin

    We want to write a Babel Plugin, which move 'const versionRegex = /(/d+)\.(/d+)\.(/d+)/gi' out of fu ...

  2. java和javascript日期校验和闰年问题分析和解决方式

    1.闰年的介绍 地球绕太阳执行周期为365天5小时48分46秒(合365.24219天)即一回归年.公历的平年仅仅有365日,比回归年短约0.2422 日,所余下的时间约为四年累计一天.故四年于2月加 ...

  3. 1.3 Quick Start中 Step 1: Download the code官网剖析(博主推荐)

    不多说,直接上干货! 一切来源于官网 http://kafka.apache.org/documentation/ 不要局限于,这个版本,我只是以最新的版本,来做个引子,让大家对官网的各个kafka版 ...

  4. "C:\Program Files\Internet Explorer\iexplore.exe" -extoff 无加载项启动IE 浏览器打开时全屏模式

    "C:\Program Files\Internet Explorer\iexplore.exe" -extoff 无加载项启动IE浏览器打开时全屏模式

  5. 使用Struts2和jQuery EasyUI实现简单CRUD系统(七)——数据分页处理

    上篇完毕多选删除的功能之后,接下来就是做分页功能了.曾经的分页是一个麻烦的问题.并且数据量巨大的时候,直接把这些元素取出来显然速度较慢,所以取一定区间的数据还是高效的. watermark/2/tex ...

  6. WebApp调用手机相册或摄像头、拨打电话

    WebApp调用手机相册或摄像头.拨打电话 一.总结 一句话总结:input标签,指定type为file,选择好对应的accept即可.camera——相机,相应的accept为image : cam ...

  7. 【原创】面向对象版本地CPU资源占用监控脚本

    前期准备: 1.python2.7环境 2.相关第三方库下载安装 脚本工作过程: 1.根据输入的进程名判断进程是否存在,如果不存在则进行等待,直到检测到进程PID,中途进程退出抛出异常,键入enter ...

  8. Android RxJava基本流程和lift源码分析

    基本结构 我们先来看一段最基本的代码,分析这段代码在RxJava中是如何实现的. Observable.OnSubscribe<String> onSubscriber1 = new Ob ...

  9. Android NetworkOnMainThreadException异常

    看名字就应该知道,是网络请求在MainThread中产生的异常 先来看一下官网的解释: Class Overview The exception that is thrown when an appl ...

  10. spring boot 2.x Path with "WEB-INF" or "META-INF"

    学习spring boot 2.x时,使用jsp作为前端页面.在application.properties配置了jsp所在位置 spring.mvc.view.prefix:/WEB-INF/vie ...