Android: WebView加载网页的几种方式及网络异常处理

Android的WebView加载网页的几种方式及网络异常处理 Android的webview加载本地html、assert内html和收集URL 2013年4月16日联系商易上海电子商务网站建设,了解更多   1 //打开本包内asset目次下的test.html文件 2 wView.loadUrl(" file:///android_asset/test.html "); 3 //打开本地s 阅读详情

1.加载本地assert目录下文件(error.html)

webcontent.loadUrl(" file:///android_asset/error.html ");

2.加载网络url(http://www.csdn.com)

webcontent.loadUrl(" http://www.csdn.com ");

3.加载 String 类型html

StringerrorHtml = "<html><body><h1>Page not find!</h1></body></html>";

webcontent.loadData(errorHtml, "text/html", "UTF-8");

4.加载SD卡html:

webcontent.loadUrl(" content://com.android.htmlfileprovider/sdcard/kris.html ");


异常处理:

webcontent.setWebViewClient(new WebViewClient(){
        @Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub                               
        Log.i("webview", "url = "+url);
                view.loadUrl(url);
return true;
}
        @Override
            public void onReceivedError(WebView view, int errorCode,
                            String description, String failingUrl) {
                    super.onReceivedError(view, errorCode, description, failingUrl);
                    //这里进行无网络或错误处理,具体可以根据errorCode的值进行判断,做跟详细的处理。
                    view.loadUrl(file:///android_asset/error.html );
            } 
@Override
            public void onPageStarted(WebView view, String url, Bitmap favicon) {
                Log.i("onPageStarted", url);
              super.onPageStarted(view, url, favicon);
}
      
@Override
public void onPageFinished(WebView view, String url) {
                Log.i("onPageFinished", url);
              super.onPageFinished(view, url);
}
        });

安卓WebView异常处理全攻略:从onReceivedError到errorCode解析 本文深入解析安卓WebView加载失败时的异常处理,重点讲解如何正确使用onReceivedError方法捕获错误,并详细解读errorCode与errorMessage的含义。文章提供了版本兼容性处理、HTTP错误监听及友好错误页设计等实战策略,帮助开发者提升App的健壮性与用户体验。 阅读详情

相关推荐

WebView封装网页为APP:从原理到实战的完整指南

WebView作为移动应用开发中的核心技术,本质上是一个内置的浏览器组件,能够在原生应用中加载和显示网页内容。其工作原理是通过将网页资源嵌入到原生容器中,实现混合开发模式。这种技术方案的价值在于能够快速将现有网页内容转化为移动应用,大幅降低开发成本和时间。在实际应用场景中,WebView特别适合内容展示类、工具类网页的移动端封装,如导航软件、信息查询等常见应用。通过合理的配置优化和性能调优,WebView方案可以稳定运行并满足基本功能需求。本文基于实测经验,重点解析WebView封装方案的环境准备、打包流程

weixin_33834910的博客 560

android studio使用WebView提示net ERR_FILE_NOT_FOUND

android studio使用WebView报net ERR_FILE_NOT_FOUND解决方法

gong0585的专栏 1万+

Android调用浏览器打开网页:从Intent基础到WebView对比与深度链接处理

在Android开发中,应用间通信与组件启动是核心基础概念,主要通过Intent机制实现。其原理是系统根据Intent的动作(Action)和数据(Data)匹配并启动能处理该请求的组件,如浏览器应用。这一机制的技术价值在于实现了应用功能的解耦与复用,是构建开放Android生态的基石。在工程实践中,最常见的应用场景之一就是启动外部浏览器打开网页链接。然而,这看似简单的操作,在实际开发中却涉及复杂的兼容性处理和安全考量,例如处理深度链接(Deep Link)的干扰、应对特殊URL Scheme(如snssd

weixin_34195364的博客 334

android使用WebView时添加error.html

1.工具Android studio 新建assets文件在src/main/目录下,新建error.html 2.添加代码 add_webview.setWebViewClient(new WebViewClient(){             @Override             public boolean shouldOverrideUrlLoading(WebView v

baidu_33512336的博客 1万+

网页打包APP完整指南:从WebView原理到实战优化

WebView作为移动应用开发中的核心技术组件,本质上是一个内嵌的浏览器引擎,允许开发者在原生应用容器中加载和显示网页内容。其技术原理是通过创建原生APP外壳,内部集成WebView组件来渲染指定URL的网页资源,同时通过JavaScript桥接实现与原生功能的交互。这种架构的技术价值在于大幅降低了移动应用开发门槛,让非专业开发者也能快速将现有网站转化为移动应用。在应用场景方面,特别适合企业官网、新闻资讯、博客内容等以信息展示为主的轻量级需求。通过合理配置缓存策略、优化加载性能和安全防护,网页打包方案能够有

weixin_30703911的博客 427

Android应用调用浏览器打开网页:从Intent基础到Chrome Custom Tabs进阶实践

在Android应用开发中,应用间通信是实现功能扩展和用户体验衔接的关键技术。其核心原理是通过Intent机制,向系统发送包含特定动作和数据URI的请求,由系统匹配合适的组件(如浏览器)进行处理。这项技术的价值在于能够安全、高效地利用设备上的其他应用能力,例如打开网页进行第三方登录、内容分享或查看详情,从而避免应用功能冗余。典型的应用场景包括电商App跳转支付页面、社交应用打开外部链接以及内容型App展示活动详情。本文聚焦于Android中通过Intent调用浏览器打开指定页面的完整方案,深入探讨了基础实现

weixin_30652897的博客 321

android之webview使用-处理404等错误

public class WebView_404 extends Activity {      private final String HOMEPAGE = "http://www.abchina.com";//请求的网站的主页      private WebView web;      private Handler handler = new Handler() {       

专注Android开发 4011

四、ARDUINO UNO开发板介绍

(一)ARDUINO UNO开发板 Arduino生态中包括多种开发板、模块、扩展板。其中UNO R3是最适合入门且功能齐全使用量最多的Arduino开发板。以下就是Arduino UNO R3开发板的图片。 (二)ARDUINO UNO开发板基本构成 Arduino开发板设计得非常简洁,一块AVR单片机、一个晶振或振荡器和一个5V的直流电源。常见的开发板通过一条USB数据线连接计算机。Arduino有各式各样的开发板,其中最通用的是Ardui...

简时刻的博客 7万+

Android 之 WebView 处理网页返回的错误码信息

假如你们公司是做HTML5端的移动APP的,就是通过WebView来显示网页的,假如你访问的网页 不存在,或者其他错误,报404,401,403,30X等错误的状态码,如果直接弹出WebView默认的错误 提示页面,可能显得不那么友好,我们可以重写WebViewClient的onReceivedError()方法来实现我们 想要的效果,一般的做法有两种,一种是:我们自己在assets目录下创建一个用于显示错误信息的 HTML页面

leyang0910的博客 3421

模拟调制系统实战:从AM到FM的5种调制方式对比与选型指南

本文深度解析AM、DSB、SSB、VSB、FM五种经典模拟调制方式,从实现电路、频谱效率、抗噪性能及工程成本等维度进行实战对比。通过MATLAB/Simulink仿真案例,提供清晰的选型决策框架,帮助工程师在无人机图传、短波通信、广播系统等具体项目中,根据带宽、功耗和抗干扰需求选择最优方案。

study的专栏 932

通达信源码-金牛暴起

趋势1:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1),3,1) AND SJTJ,DOTLINE,COLORGRAY;谷:=(((DD-LLV(DD,21))/(HHV(DD,21)-LLV(DD,21)))*(4))*(25);{0,25指高度};

qq_57222058的博客 3529

android访问网页失败提示错误,WebView中加载页面错误处理

github地址(完整Demo下载,欢迎访问)在Android项目中,我们通常会用WebView来加载网页面,当我们的手机没有联网,或是服务端不小心瘫痪的时候,WebView展示的效果就比较丑。Paste_Image.png解决办法我们自定义一个View用来展示加载失败的样子,或者我们也可以直接写一个错误展示的HTML让WebView加载等等。我们进行重写的方法是WebViewClient的onR...

weixin_29859471的博客 1550

Android实现自动输入文本效果 (附完整源码)

Android实现自动输入文本效果 (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 416

android配网web打不开,解决WebView通过URL加载H5界面出现空白的问题

1.权限问题:在配置文件中需要设置网络权限2.基本配置问题websettings websettings = webview.getsettings(); //支持缩放,默认为true。.setusewideviewport(true); // 缩放至屏幕的大小 websettings.setloadwithoverviewmode(true); //设置默认编码websettings .setd...

weixin_35952000的博客 1125

液态神经网络(Liquid Neural Networks)从线虫大脑到下一代 AI

液态神经网络(Liquid Neural Networks,LNN)是一类具有动态内部结构的神经网络,其灵感来源于生物神经系统,尤其是大脑中神经元如何以复杂、非线性的方式响应外部刺激。与传统神经网络不同,液态神经网络的每个神经元在处理输入时,不再是静态线性或非线性变换,而是基于一个微分方程模型进行响应。这种建模方式使神经元的行为具有时间连续性和动态适应性。换句话说,它不仅“记住”过去的信息,还能根据当前环境实时调整自身的动态特性,这对于感知、决策、预测等任务都非常关键。

hello.reader 7418

SAP 批次管理(分割评估)

批次分割评估: 业务场景:企业要求各批次物料成本价格不一样。此时可以采用分割批次来实现不同成本 后台配置: (1)、激活分割评估 后台---物料管理----评估与科目设置---分割评估-----激活分割评估 (2)、配置分割评估 后台---物料管理----评估与科目设置---分割评估-----配置分割评估 进入全局性分类后,批次分割采用已有的评估类型“X自动(批)”: ...

willieyuan的博客 1万+

安卓开发之嵌入H5

1、开启网络权限 AndroidManifest.xml 添加:<uses-permission android:name="android.permission.INTERNET"/> <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.mya.

小达哥的博客 2656

基于STM32的浴室环境智能控制系统设计

摘要:本文设计了一款基于STM32F103的智能卫浴系统,通过多传感器协同检测浴室环境参数。系统采用DS18B20检测环境与卫浴温度,DHT11监测湿度,MQ-135检测空气质量,光敏电阻测量光照强度,D203S人体热释电模块检测人员存在。当检测到异常参数时,系统自动启动相应调节功能:温度异常时控制加热/制冷继电器,湿度过高时启动通风除湿,空气质量差时进行换气,光照不足且有人时自动开灯。系统支持按键、蓝牙APP和语音三种控制方式,可手动设置参数阈值、切换防雾模式、控制音乐播放等功能。实验结果表明,该系统能有

3254968421的博客 485

[Android基础] WebView

[ Demo下载 ]资源 Web Apps WebView Android4.4 webview实现分析 Android WebView使用深入浅出 深入讲解WebView(上) - 互调,缓存,异常处理等 深入讲解WebView(下) - session,cookie等 Android WebView Memory Leak WebView内存泄漏 ==! 这个我用leakcanary没检测出来

冰川孤辰的专栏 4560

三峡大学-微机原理与接口技术实验

其中,A15接E1,因此,A15为1,A14A13A12A11A10A9A8A7通过八输入与非门74LS30与E2连接,因此A14A13A12A11A10A9A8A7为11111111,A6A5A4与CBA连接,因此A6A5A4为101,A3A2A1A0不参与译码,因此IO5的地址范围为1111 1111 1101 0000B~1111 1111 1101 1111B,即0FFD0H~0FFDFH。如图1所示,若IO0输出为低电平,则需要E1接高电平,E2接低电平,E3接低电平,CBA的输入为000。

m0_62222486的博客 496

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

安卓网络图片查看(WebView)

安卓中实现在程序中打开网页需要借助WebView组件。 主要代码如下 public class MainActivity extends Activity { private EditText imagepath; private ImageView imageView; @Override public vo

yinnixingfu的博客 387

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Android使用WebView加载本地资源

Android使用WebVie 在网上看了许多关于WebView 的例子。但当自己做起来时,总是有些差别,是另一种体会。这节我就以 模拟器为2.1 为例来讲。    WebView 主要调用三个方法:LoadUrl、LoadData、LoadDataWithBaseURL。      1、LoadUrl        直接加载网页、图片并显示。(本地或是网络上的网页、图片、gif

u013338165的专栏 2988

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Android webview实战

今天来使用webview进行一个实例演练,可以基本用到任何地方,目的在于熟悉一下webview的使用,基本算是入门的吧。 先看一下效果图, 接下来我们看看如何实现第一步: 首先加载网页的时候有个对话框,我们看看怎么实现的,public class CustomDialog extends Dialog { private LayoutInflater inflater; p

Small_Lee的博客 422

webview无网络或错误处理

1.加载本地assert目录下文件(error.html) webcontent.loadUrl(" file:///android_asset/error.html "); 2.加载网络url(http://www.csdn.com) webcontent.loadUrl(" http://www.csdn.com "); 3.加载 String 类型html String

weiyongzu的专栏 4906
上一篇: android 神奇的android:clipChildren属性
下一篇: android:使用WebView, WebChromeClient和WebViewClient加载网页
Ke1vin
博客等级 码龄11年 11粉丝 103原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值