客户端webview持有的页面缓存,不会立即释放的问题解决

安卓和苹果的客户端开发中,经常会使用到webview,我们一般做法是将webview加入到native页面中。

当我们对页面进行销毁的时候,其中webview持有的HTML页面还会继续存在,加入我们在HTML页面中做了一些监听手机晃动、声音…… 以及使用了js定时任务的情况下。

单纯的销毁我们的native页面并不能达到让页面中这些内容停止执行。

所以在小会native页面之前,将webview的页面设置问空页面即可,如下是安卓代码,苹果的处理方法一样:

	@Override
	public void finish() {
		// 当我们对Activity进行finish的时候,webview持有的页面并不会立即释放,如果页面中有在执行js等其他操作,仅仅进行finish是完全不够的。
		mWebView.loadUrl("about:blank");
		super.finish();
	}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-21 19:54:30

客户端webview持有的页面缓存,不会立即释放的问题解决的相关文章

Nginx反向代理、负载均衡、页面缓存、URL重写及读写分离详解

大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Nginx之页面缓存 七.Nginx之URL重写 八.Nginx之读写分离 注,操作系统为 CentOS 6.4 x86_64 , Nginx 是版本是最新版的1.4.2,所以实验用到的软件请点击这里下载:http://yunpan.cn/QXIgqMmVmuZrm 一.前言 在前面的几篇博文中我们主要讲解了Nginx作为Web服务器知识点,主要的知识点有nginx的理论详解.ngin

JSP 页面缓存以及清除缓存

一.概述 缓存的思想可以应用在软件分层的各个层面.它是一种内部机制,对外界而言,是不可感知的. 数据库本身有缓存,持久层也可以缓存.(比如:hibernate,还分1级和2级缓存) 业务层也可以有缓存(但一般来说,这是一个过程域,不会设缓存). 表现层/数据服务层(传统web的表现层)也可以设置缓存(jsp cache 就是这一层,实现在app server上的缓存机制) 另外Browser也有缓存(如IE)这个大家也都知道(实现在 web server 上的缓存机制).越上层的缓存效果越好,越

Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解

大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Nginx之页面缓存 七.Nginx之URL重写 八.Nginx之读写分离 注,操作系统为 CentOS 6.4 x86_64 , Nginx 是版本是最新版的1.4.2,所以实验用到的软件请点击这里下载:http://yunpan.cn/QXIgqMmVmuZrm 一.前言 在前面的几篇博文中我们主要讲解了Nginx作为Web服务器知识点,主要的知识点有nginx的理论详解.ngin

页面缓存的范畴及原理

谈到页面性能优化,缓存机制是其中非常重要的一环.缓存可以使页面尽可能快地得到需要的文档,具有减轻带宽.降低服务的负荷.提高用户体验等功能.随着高级浏览器,尤其是移动端的发展,可用的缓存范畴逐渐变大,简单地将其分为三类: 一.Application Cache 这是H5中的新特性,可以将页面资源缓存在本地,当页面处于离线状态下依然可以使用.使用方法很简单,大致分为2步: <html mainfest="mainfest.appcache"> CACHE MANIFEST #

Nginx设置expires设定页面缓存时间 不缓存或一直使用缓存

配置expires expires起到控制页面缓存的作用,合理的配置expires可以减少很多服务器的请求 要配置expires,可以在http段中或者server段中或者location段中加入 location ~ \.(gif|jpg|jpeg|png|bmp|ico)$ { root /var/www/img/; expires 30d; } 控制图片等过期时间为30天,当然这个时间可以设置的更长.具体视情况而定 比如 location ~ \.(wma|wmv|asf|mp3|mmf|

ASP.NET页面缓存

静态页面全部内容保存在服务器内存中.当再有请求时,系统将缓存中的相关数据直接输出,直到缓存数据过期.这个过程中,缓存不需要再次经过页面处理生命周期.这样可以缩短请求响应时间,提高应用程序性能.很显然,页面输出缓存适用于不需要频繁更新数据,而占用大量时间和资源才能编译生成的页面.对于那些数据经常更新的页面,则不适用.默认情况下,ASP.NET 2.0启用了页面输出缓存功能,但并不缓存任何响应的输出.开发人员必须通过设置,使得某些页面的响应成为缓存的一部分. 设置页面输出缓存可以使用以下两种方式:一

Nginx反向代理 负载均衡 页面缓存 URL重写及读写分离

大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Nginx之页面缓存 七.Nginx之URL重写 八.Nginx之读写分离 注,操作系统为 CentOS 6.4 x86_64 , Nginx 是版本是最新版的1.4.2,所以实验用到的软件请点击这里下载:http://yunpan.cn/QXIgqMmVmuZrm 一.前言 在前面的几篇博文中我们主要讲解了Nginx作为Web服务器知识点,主要的知识点有nginx的理论详解.ngin

页面缓存带来的麻烦

系统上线了,平时开发时没注意的问题接踵而至... 今天就碰到个问题,因为页面缓存的问题,用户没有设置浏览器清除页面缓存,导致好多申请单的单号都是一样... 最后问题还是解决了,虽然不是咱解决的吧,不过借此机会正好学习学习各路英雄都是如何解决缓存的问题的吧 一.禁止客户端缓存 <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control"

asp.net里如何清空页面缓存的后台代码

asp.net里如何清空页面缓存的后台代码(因为只有GET请求会有缓存)   题描述:当使用ajax的时候,很有可能出现同一次请求,这里.比如buttonA修改了数据,而buttonB导出数据,如果两个按钮都采用ajax的技术来做的话,实际上buttonB在第二次点击以后,不会重新从数据库里获得一次数据,而是直接将缓存页发送给客户端.恩-这么做是好的,但是不是我们希望的.所谓使用了Ajax产生了不可预计的结果,有一部分可能也许就在于此.所以我要做的就是每次GET请求的时候都去清空缓存,然后再生成