`
龙哥IT
  • 浏览: 254096 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

有关WebView开发问题

 
阅读更多

如何创建WebView:

    1、添加权限:AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not available错误。
    2、在要Activity中生成一个WebView组件:WebView webView = new WebView(this);
    3、设置WebView基本信息:
          如果访问的页面中有Javascript,则webview必须设置支持Javascript。
          webview.getSettings().setJavaScriptEnabled(true); 
          触摸焦点起作用
          requestFocus();//如果不设置,则在点击网页文本输入框时,不能弹出软键盘及不响应其他的一些事件。
          取消滚动条
          this.setScrollBarStyle(SCROLLBARS_OUTSIDE_OVERLAY);
    4、设置WevView要显示的网页:
          互联网用:webView.loadUrl("http://www.google.com");
          本地文件用:webView.loadUrl("file:///android_asset/XX.html");  本地文件存放在:assets文件中
    5、如果希望点击链接由自己处理,而不是新开Android的系统browser中响应该链接。
          给WebView添加一个事件监听对象(WebViewClient)     
       
          并重写其中的一些方法
                shouldOverrideUrlLoading:对网页中超链接按钮的响应。
                                          当按下某个连接时WebViewClient会调用这个方法,并传递参数:按下的url
                onLoadResource  
                onPageStart 
                onPageFinish 
                onReceiveError
                onReceivedHttpAuthRequest
        

    6、如果用webview点链接看了很多页以后,如果不做任何处理,点击系统“Back”键,整个浏览器会调用finish()而结束自身,如果希望浏览的网页回退而不是退出浏览器,需要在当前Activity中处理并消费掉该Back事件。
       覆盖Activity类的onKeyDown(int keyCoder,KeyEvent event)方法。
    public boolean onKeyDown(int keyCoder,KeyEvent event){
                        if(webView.canGoBack() && keyCoder == KeyEvent.KEYCODE_BACK){
                              webview.goBack();   //goBack()表示返回webView的上一页面


                                 return true;
                           }
                        return false;
                   }

  WebView相关问题注意:

Android的webView很强大,其实就是一个浏览器,你可以把它嵌入到你想要的位置,我这里遇到两个问题,就是怎么知道网页的加载进度和加载网页时,
点击网页里面的链接还是在当前的webview里跳转,不想跳到浏览器那边,解决办法如下:

//此方法可以处理webview 在加载时和加载完成时一些操作
webView.setWebChromeClient(new WebChromeClient(){
  @Override
  public void onProgressChanged(WebView view, int newProgress) {
    if(newProgress==100){                        // 这里是设置activity的标题, 也可以根据自己的需求做一些其他的操作
          title.setText("加载完成");
     }else{
     title.setText("加载中.......");

      }
    }
});


webView.setWebViewClient(new WebViewClient(){
  @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {  //重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
       view.loadUrl(url);
       return true;
  }

        @Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, android.net.http.SslError error) { // 重写此方法可以让webview处理https请求
handler.proceed();
}

});

分享到:
评论

相关推荐

    webview开发

    ### WebView开发概述 在深入探讨WebView的开发细节之前,我们首先需要明确WebView的基本概念及其重要性。WebView是一种基于Web技术的视图组件,允许开发者在移动应用中嵌入网页内容。这种技术广泛应用于Android和...

    用原生webView开发的安卓壳子

    在Android应用开发中,"用原生webView开发的安卓壳子"是指利用Android系统的WebView组件构建一个基础的应用框架。WebView是Android SDK中的一个类,它允许开发者在应用程序中嵌入一个浏览器内核,用于显示网页内容。...

    安卓WebView开发自适应

    总的来说,安卓WebView开发自适应是一个涉及多方面技术的问题,包括WebView的使用、HTML/CSS的响应式设计、Android布局的自适应、原生与Web的交互等。通过熟练掌握这些知识点,开发者可以构建出既美观又具有良好用户...

    android webview开发应用

    这个“android webview开发应用”显然提供了相关的源代码,为开发者提供了一个学习和研究的实例。以下是一些关于Android WebView开发的关键知识点: 1. **WebView介绍**:WebView是Android SDK中的一个类,它继承自...

    android开发实现的webview实例

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页浏览功能,能够加载和...在实际开发中,我们需要充分理解其工作原理,合理利用其特性,同时关注安全问题,以实现高效、安全的应用程序。

    Android Studio平台下使用webview开发的android浏览器

    本资源配套本人的博客文章《Android开发】Android Studio中进行简单的WebView构建浏览器开发1》和《Android开发】Android Studio中进行简单的WebView构建浏览器开发2》进行使用,实现了基本的浏览器功能:包括:输入...

    webView web开发用的案例

    在Android应用开发中,WebView是一个非常重要的组件,它允许开发者在应用程序中嵌入网页内容,实现与网页的交互。这个“webView web开发用的案例”很可能是为了帮助开发者理解和掌握如何在Android应用中使用WebView...

    安卓webview的开发

    【安卓Webview的开发】 在当今的移动应用开发领域,Android Webview已经成为一个重要的组件,尤其对于那些希望利用HTML5、JavaScript以及CSS3技术来快速构建应用的开发者来说。Webview是Android系统中的一个原生...

    Android Studio 开发的WebView 框架源码

    总的来说,Android Studio中的WebView开发是一个涉及多个层次和组件的过程,从布局设计到代码实现,再到用户体验的优化,都需要开发者具备扎实的Android基础知识和良好的编程习惯。通过理解并掌握WebView的源码,...

    Android WebView HTML界面开发 实现拨打电话

    在Android应用开发中,WebView是一个非常重要的组件,它允许开发者在应用程序内嵌入网页内容,实现与HTML、CSS和JavaScript的交互。这篇博客主要讲解如何使用Android WebView来加载HTML界面,并实现点击HTML中的链接...

    Android离线webview调试工具,开发H5混合应用必备

    在Android平台上,开发混合应用程序(Hybrid App)时,经常需要用到WebView来加载和展示H5内容。然而,对于H5页面的调试工作,开发者通常依赖于Chrome浏览器的开发者工具(Chrome DevTools),其中的`chrome://...

    使用webview做的浏览器~android基础学习

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页内容,实现一个基本的浏览器功能。本篇文章将深入探讨如何使用WebView来构建一个简单的浏览器,并结合Android基础知识进行学习。 ...

    Android开发WebView获取SD卡图片并显示

    在Android应用开发中,WebView是一个非常重要的组件,它允许开发者在应用程序内嵌入网页内容,实现类似浏览器的功能。本文将详细讲解如何在Android的WebView中加载并显示SD卡上的图片,以及如何解决自Android 4.4...

    Webview播放网络视频并实现全屏显示,解决声音问题

    在Android开发中,WebView是一个非常重要的组件,它允许我们在原生应用中加载和展示网页内容。本教程将详细讲解如何使用WebView播放网络视频,并实现全屏显示,同时解决在5.0及以上系统上的声音问题以及全屏时的声音...

    Android利用 webview 查看阅读pdf资料( 优化)

    在Android开发中,Webview是一个强大的组件,常用于加载网页内容和实现轻量级的浏览器功能。当需要在应用中查看PDF文档时,Webview也是一个常见的选择,特别是对于在线PDF资源。本文将深入探讨如何利用Webview查看...

    android webview开发与js交互

    总之,Android WebView开发与JavaScript交互是构建混合应用的关键技术之一。理解并熟练掌握WebView的使用、安全控制以及优化技巧,能帮助开发者更好地构建功能丰富的应用。通过JavaScriptInterface和WebChannel,...

    WebView2-20200512- WebView2Loader.dll.zip

    WebView2Loader.dll是WebView2运行库的核心组件,负责加载和管理WebView2的相关功能。 1. **WebView2Loader.dll的功能**: - 加载:WebView2Loader.dll是WebView2运行时环境的关键部分,它负责加载和初始化WebView...

    android开发中WebView的使用

    在Android开发中,WebView是一个非常重要的组件,它允许开发者在应用程序内部嵌入一个浏览器控件,使得用户可以在应用中直接浏览网页内容。WebView基于WebKit渲染引擎,因此它能很好地支持HTML、JavaScript和CSS等...

    iOS webview Hybrid开发预加载.zip

    在iOS应用开发中,Webview和Hybrid技术的结合使用是一种常见的做法,它允许开发者利用JavaScript的灵活性和iOS原生平台的优势。预加载是优化Webview性能的关键策略,尤其是在资源密集型的应用中。本篇文章将深入探讨...

    crosswalk-webview比webview更好用

    在移动应用开发中,Webview是一个关键组件,它允许开发者在原生应用程序内嵌入网页内容。Android系统自带的WebView是Android应用中常用的一种方式,但随着时间的推移,开发者们发现了一些限制,比如性能问题、版本...

Global site tag (gtag.js) - Google Analytics