首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WebView的restorePicture方法 - 阻止webview重新加载页面

在云计算领域中,WebView 是一个用于在应用程序中嵌入网页的组件。restorePicture 方法是一个 Android 系统方法,用于在 WebView 中恢复页面的图像缓存。

当使用 WebView 时,有时会遇到页面重新加载的问题。这可能是由于配置更改、屏幕旋转或其他原因导致的。为了防止 WebView 在这些情况下重新加载页面,可以使用 onSaveInstanceStateonRestoreInstanceState 方法来保存和恢复 WebView 的状态。

以下是一个简单的示例,说明如何使用 onSaveInstanceStateonRestoreInstanceState 方法来保存和恢复 WebView 的状态:

代码语言:java
复制
@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    webView.saveState(outState);
}

@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onRestoreInstanceState(savedInstanceState);
    webView.restoreState(savedInstanceState);
    webView.resumeTimers();
}

在这个示例中,我们使用 onSaveInstanceState 方法来保存 WebView 的状态,并将其存储在 Bundle 对象中。然后,我们使用 onRestoreInstanceState 方法来恢复 WebView 的状态。

使用这种方法,可以确保 WebView 不会在不需要时重新加载页面,从而提高应用程序的性能和用户体验。

总之,要防止 WebView 在某些情况下重新加载页面,可以使用 onSaveInstanceStateonRestoreInstanceState 方法来保存和恢复 WebView 的状态。这将提高应用程序的性能和用户体验。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android webview 加载html 页面缩放问题

我在做webview 嵌入HTML 网页时候,碰到这样一 个问题 : 就是网页上面的内容 字体或者图片等 设置过小,就影响用户查看,看不清楚。那么怎么将这个页面放大查看呢。  ...我当时想了两种思路:一种是在html页面加点击事件 点击跳入下一个页面 ,上面展示点击 相关内容文字或者图片。另一种思路是  手势放大缩小这个页面。  第一种由于实现起来比较麻烦。故放弃。...那么怎么能设置  html页面webview加载以后 可以 放大缩小呢。 其实不需要 单独做  放大缩小事件。...只需要在html页面上 做如下操作: 在html页面中去掉这一行 <meta name="viewport" content="width=device-width, initial-scale=1.0

1.8K30

Android WebviewpostUrl与loadUrl加载页面实例

1、使用场景如下: webview加载H5链接时,默认是使用loadUrl进行加载,如果你设置了缓存属性(进行缓存),在显示H5页面内点击跳转到另外一个页面后,按回退键,可以正常返回到上一个页面,...但是如果使用postUrl进行加载,即使你设置缓存属性是进行设置,当你调转到另外一个页面后,按回退键,不会缓存之前页面,而是重新调用postUrl进行加载。...通过该方法setRequestProperty方法重新设置了请求属性,然后使用postUrl进行重新加载,可以解决按回退键后页面重新恢复。...如果你进行抓包,你会发现,从开始加载链接到H5页面加载每一个请求,该方法都会被调用,简单说就是有多少个请求,该方法就会调用多少次。...4、结论 webviewH5页面加载最好使用loadUrl方式,如果使用postUrl方式进行加载,你需要重写整个setWebViewClient方法,当中会出很多坑,不建议这样做。

1.7K30

WebView加载页面的两种方式——网络页面和本地页面

WebView加载页面的两种方式 一、加载网络页面   加载网络页面,是最简单一种方式,只需要传入httpURL就可以,实现WebView加载网络页面 代码如下图: ?...二、加载本地页面   1、加载assets目录下HTML页面加载assets目录页面,大多数可以用来做页面数据存储打包,这样可以访问 离线文件,不用去进行网络请求,可以减少用户数据流量使用...示例代码如下: //加载assets目录文件 webView.loadUrl("file:///android_asset/staticHtml.html"); 在这里面,解释一下引号里面每个字段意思和作用...android_asset表示读取当前应用assets目录下文件   staticHtml.html表示assets目录下HTML页面   2、加载缓存到本地页面 加载缓存到本地页面,这个主要可以用来做页面的离线缓存...使用url地址 String url="file://"+destFile.getAbsolutePath(); webView.loadUrl(url); 注:一些网络上直接抓取页面里面一些

2.2K30

Android 9.0使用WebView加载Url时,显示页面无法加载

最近使用WebView加载Url显示页面,因为之前已经使用过很多次这种方式了,打包后在6.0测试机上测试没什么问题,然后安心将包给测试,测试大佬手机系统是Android 9.0,所以就出现了页面无法加载情况...,还以为是自己代码哪里写错了,检查了很多遍都没发现什么问题,然后在5.0,7.0,8.0测试机上测试都没问题,那就想到是9.0系统问题了,先看页面报错图: [fd6yx0hwl5.png] 在这里插入图片描述...要解决这个问题有以下三种方案,也适用于http无法访问网络问题: 1.将url路径地址由http改成https,这就需要让后台大佬更改了。...---- 小编整理了一份Android电子书籍,需要童鞋关注公众号回复:"e_books" 即可获取哦!

6.5K30

android系统webview最新版本_webview加载h5页面空白

大家好,又见面了,我是你们朋友全栈君。 做android聊天时,遇到过一个问题,h5页面发送图片在android端不能响应,ios那边一路畅通。...也是相当无奈,目前发现了好多android端与ios端webView异同。...页面的发送图片按钮点击没反应,ios却可以 4:android可以postUrl,ios不行,需要js混合开发 下面简单说下第三点。...1:出现原因: H5 访问本地文件时候,使用 ,WebView 出于安全性考虑,限制了以上操作 2:解决方法 重写 WebviewChromeClient 中 openFileChooser(...) 和 onShowFileChooser()方法响应,然后使用原生代码来实现调用本地相册和拍照功能,最后在 onActiivtyResult 把选择图片 URI 回传给 WebviewChromeClient

1.1K40

WebView设置WebViewClient方法

WebView设置WebViewClient方法 shouldOverrideUrlLoading: 在web页面里单击链接时候,会自动调用android自带浏览器来打开链接,需要通过该方法在本页面打开...resend) 在应用程序中,如果浏览器需要重新加载页面数据,这个页面必须是属于POST请求,默认情况下,是不会发送重新加载数据. onLoadResource(WebView view,String...之前页面遗留内容,将不会在加载和绘制. (2)这个回调被使用在WebView内容安全回收,确保不会显示陈旧内容. (3)它能够在最早被调用,以此来保证onDraw(Canvas)在以前界面不会绘制任何内容...(webView view,String url) 通知应用程序页面已经完成加载,只有主框架才能调用此方法,当onPageFinish()被调用时,呈现图片可能还没有被更新.新照片通知更新,请使用onNewPicture...(WebView,Picture) onPageStarted(WebView view,String url,Bitmap favicon) 通知应用程序已经开始进行页面加载,这个方法,在每个主框架加载一个页面或者一个内置页框都会被调用

1.5K41

Android WebView 加载网页遇到问题

Android WebView 加载网页 代码附上: MainActivity.java文件 package com.example.yubai8.hybrid_app; import android.os.Build...//这个主要解决加载网页不跳转到系统浏览器 webView.setWebViewClient(new WebViewClient()); //解决webview缓存问题...); } //WebView加载web资源 webView.loadUrl("http://baidu.com"); } } activity_main.xml...中遇到问题 问题1:网页不跳转到系统浏览器解决方案: //这个主要解决加载网页不跳转到系统浏览器 webView.setWebViewClient(new WebViewClient()); 问题1...:如果WebView连接网页报错,那么请看AndroidManifest.xml文件是否配置网络请求,如果配置了还是同样报错,那么,在MainActivity.java文件中加入这个代码: //解决webview

1K20

Android 7.0系统webview 显示https页面空白处理方法

最近开发时候,偶尔遇到在线上稳定运行webview内嵌h5页面加载不出来,一直定位不到具体原因(因为我们自己做兼容性测试上不重现),看系统日志也没有发现什么问题,后来咨询了用户手机型号,发现是...这个页面在近期变更是从http切换到https,由于之前页面是http,我们在切换时候,除了url之外,并未对webviewssl校验做特殊处理。...问题就出在这里,webview加载https时候,通常会用手机根证书对h5页面进行校验,这个校验不一定成功。...这个方法是可行,他在ssl校验失败时候绕过了这个步骤。...显示https页面空白处理方法就是小编分享给大家全部内容了,希望能给大家一个参考。

2.4K10

Android WebView调用本地相册方法

本文实例为大家分享了Android WebView调用本地相册具体实现方法,供大家参考,具体内容如下 首先要知道android本身WebView是并不支持调用手机文件并上传,其次WebView内核在...android每次更新时候都是不太一样,也是够坑爹;不过需求又不能改,H5需要调用系统相册,还好最后还是找到方法解决了,就是要重写里面的一个方法,不过这种情况也是在5.0之前有效,5.0之后就需要重写另外一个方法...,先将这些方法一个个列出 注意在这里我们需要重写方法是在这个WebChromeClient类里面的; private ValueCallback<Uri mUploadMessage; private...,只是在不同版本下会分别调用,还有就是这个方法是重写这个WebChromeClient类里面的,别以为是我们随便写,只是google不希望我们重写这个方法罢了,不过5.0之后就又不一样了,需要重写是下面的这个方法...: @Override public boolean onShowFileChooser(WebView webView, ValueCallback<Uri[] filePathCallback,

2.8K10

Android WebView使用方法总结

Android WebView使用方法 Android app打开H5页一般要实现如下需求: 1、打开指定url网页; 2、点击链接可以跳转到下一页,并更新标题; 3、按back键或左箭头可以返回上一页...; 4、当webview显示是第一级url时, 按返回键或左箭头关闭当前界面; 5、WebView如何传值给android, 例如使用H5登录成功后返回姓名、token等等字段。...8、避免WebView内存泄漏。 不多说, 看下面代码如何实现上述功能。 参考布局: <?xml version="1.0" encoding="utf-8"?...view, String url, final String message, final JsResult result) { //注意,WebView默认不会显示JavaScriptAlert...使用方法详解,大家如果有疑问可以留言讨论,或者到本站社区交流,感谢阅读,希望能帮助到大家,谢谢大家对本站支持!

87020

Webview加载pdf遇到一些坑及解决方法

听完我心中暗想:这还不简单,加载在线pdf不就和加载网页一样webview加上pdf链接,搞定! 这一想完,立即比了个OK:“没问题,简单!”...怎么一片空白,难道是webview设置项有问题,但是加载网页一点问题都没啊。这时候瞥见隔壁iOS老大哥已经成功加载出pdf了,一问也是用webview加载,那为啥搁我这就不行?看不起我?...原来Androidwebview压根就不支持加载pdf。 Android与iOS不同,iOS加载pdf,不管本地还是在线,直接使用webview渲染就可以了,而Android却做不到。...经过多方对比,使用webview加载pdf方案更符合大多数场景。 以下就会从webview加载pdf方案出发,描述在开发时所涉及到问题点。 我爬坑之旅开始了!...以上,webview加载pdf问题基本已经解决。针对webview加载pdf方案,主要解决问题如下: 双指缩放; 签章无法显示; 存在多余控制按钮; 中文字符显示不全。

8.2K30

Android开发必知--WebView加载html5实现炫酷引导页面

1、制作html5引导页面。   2、把做好页面放入Android工程中assets文件夹下。   3、利用WebView加载asset文件夹下html文件。   ...最后通过loadUrl()方法加载了网址。至于该WebView如何发送请求,如何解析服务器,这些细节对我们来说是完全透明,我们不需要关心。   ...WebView提供了一个loadData(String data, String mimeType, String encoding)方法,该方法可用于加载并显示HTML代码,不过这个方法加载html...可以把这个方法认为是loadData()增强版,它不会产生乱码。以下是他几个参数说明:   ·data:指定需要加载html代码。   ...需要注意是当加载具有js文件时需通过WebSettingssetJavaScriptEnabed()方法开启对js支持。

3.2K100
领券