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

 更新时间:2017年03月19日 17:02:19   投稿:lqh  
这篇文章主要介绍了Android WebView或手机浏览器打开连接问题解决办法总结的相关资料,需要的朋友可以参考下

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打开该链接。

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

相关文章

  • 提示信息控件AlertDialog对话框详解

    提示信息控件AlertDialog对话框详解

    这篇文章主要为大家介绍了提示信息控件AlertDialog对话框的使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • Android自定义View实现自动吸附功能

    Android自定义View实现自动吸附功能

    这篇文章主要为大家详细介绍了Android自定义View实现自动吸附功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • Android WebView基础举例详解

    Android WebView基础举例详解

    在Android开发中Webview是一个重要的组件,它允许我们在原生应用中内嵌网页内容,提供混合式应用的用户体验,这篇文章主要给大家介绍了关于Android WebView基础的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • Android学习笔记-保存文件(Saving Files)

    Android学习笔记-保存文件(Saving Files)

    这篇文章主要介绍了Android中保存文件(Saving Files)的方法,需要的朋友可以参考下
    2014-10-10
  • Android实现app分享文件到微信功能

    Android实现app分享文件到微信功能

    这篇文章主要为大家详细介绍了Android实现app分享文件到微信功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Android自动化获取卡顿信息的实现方法

    Android自动化获取卡顿信息的实现方法

    自动化获取卡顿信息就像给App装  “行车记录仪”  —— 实时记录主线程的“驾驶状态”,一旦发现“急刹车”(卡顿),立刻保存现场(堆栈),事后回看录像(日志)精准定位问题,本文给大家介绍了Android自动化获取卡顿信息的实现方法,需要的朋友可以参考下
    2025-02-02
  • AsyncTask陷阱之:Handler,Looper与MessageQueue的详解

    AsyncTask陷阱之:Handler,Looper与MessageQueue的详解

    本篇文章是对Handler,Looper与MessageQueue进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路

    Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接

    本文主要介绍Android IPC通信Binder中的Server和Client获得Service Manager接口,这里详细的说明了如何实现Service Manager接口,对研究Android源码的朋友提供帮助,有需要的小伙伴可以参考下
    2016-08-08
  • RecyclerView中监听EditText变化的BUG的解决方法

    RecyclerView中监听EditText变化的BUG的解决方法

    本篇文章主要介绍了RecyclerView中监听EditText变化的BUG的解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • Android开发之Gradle 进阶Tasks深入了解

    Android开发之Gradle 进阶Tasks深入了解

    这篇文章主要为大家介绍了Android开发之Gradle 进阶Tasks深入了解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08

最新评论