Android WebView或手机浏览器打开连接问题解决办法总结

作者:lqh 时间:2022-09-15 18:46:22 

Android WebView或手机浏览器打开连接问题解决办法总结

1.通常情况下 大家可能都想使用WebView打开网页内部链接而不想再调用手机浏览器,

我们可以通过以下两种方法实现:

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


class MyWebViewClient extends WebViewClient {

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url){

// 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边

view.loadUrl(url);

return true;

}

}

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


class MyWebViewClient extends WebViewClient {

@Override

public void onPageStarted(WebView view, String url, Bitmap favicon) {

// TODO Auto-generated method stub

super.onPageStarted(view, url, favicon);

}

}

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

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


class MyWebViewClient extends WebViewClient {

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

// 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边

if (openWithWevView(url)) {

view.loadUrl(url);

}else{

Uri uri = Uri.parse(url); //url为你要链接的地址

Intent intent =new Intent(Intent.ACTION_VIEW, uri);

startActivity(intent);

}

return true;

}

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

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

来源:http://blog.csdn.net/chenshijun0101/article/details/7045145

标签:浏览器,Android,WebView
0
投稿

猜你喜欢

  • Java 自定义Spring框架与核心功能详解

    2023-11-29 05:45:19
  • rsa加密算法使用示例分享

    2021-08-03 20:47:29
  • Android使用Retrofit上传文件功能

    2022-08-28 08:42:38
  • Android提高之蓝牙传感应用实例

    2023-02-04 01:12:32
  • Android存储访问框架的使用小结

    2022-09-28 23:18:16
  • java关于并发模型中的两种锁知识点详解

    2023-09-16 02:05:34
  • java数据库唯一id生成工具类

    2023-04-04 22:53:34
  • 浅谈Java基础知识之BigDecimal

    2021-09-06 16:49:27
  • 使用adb命令向Android模拟器中导入通讯录联系人的方法

    2022-12-21 15:39:56
  • 老生常谈Java String字符串(必看篇)

    2023-06-20 19:56:20
  • 详解Spring Boot加载properties和yml配置文件

    2023-11-24 07:14:09
  • C++类和对象之类的6个默认成员函数详解

    2022-01-05 13:50:35
  • BaseJDBC和CRUDDAO的写法实例代码

    2022-09-03 14:13:33
  • c#多线程程序设计实例方法

    2023-07-24 16:39:28
  • c# 空合并运算符“??”的使用详解

    2022-11-23 13:47:36
  • 关于eclipse中运行tomcat提示端口被占用的4种解决

    2022-04-15 10:56:12
  • Java环境变量的设置方法(图文教程)

    2023-01-02 17:51:42
  • JAVA IO API使用详解

    2021-07-27 14:45:48
  • Java关键字volatile详析

    2023-01-21 21:51:11
  • Android自定义ViewGroup实现淘宝商品详情页

    2022-10-28 00:13:01
  • asp之家 软件编程 m.aspxhome.com