离线缓存之RNCachingURLProtocol解析

主要功能:实现 网页离线加载。基本思想来源于AFCache。作者是Rob
Napier(IOSX Programming的作者)。

使用方法:

  1. To build, you will need the Reachability code from Apple (included). That
    requires that you link with SystemConfiguration.framework.

  2. At some point early in the program (usually
    application:didFinishLaunchingWithOptions:), call the
    following:

    [NSURLProtocol registerClass:[RNCachingURLProtocol
    class]];

更多详情,参考http://robnapier.net/offline-uiwebview-nsurlprotocol/简介:将每次的HTTP请求缓存至disk。提交HTTP请求之前,会检查本地是否有缓存。

不主动清除缓存。不适用有太多HTTP请求的环境。

解析:

其他相关:

Mugunth Kumar写了一个基于REST连接的离线缓存工具MKNetworkKit。

详情见下一篇。

时间: 2024-10-22 18:16:50

离线缓存之RNCachingURLProtocol解析的相关文章

HTML5 离线缓存管理库

一.HTML5离线缓存技术 支持离线缓存是HTML5中的一个重点,离线缓存就是让用户即使在断网的情况下依然可以正常的运行应用.传统的本地存储数据的方式有 localstorage,sessionstorage和cookie.但是这些传统的方式有着致命的弊端.首先这些传统的存储方式的最大使用空间有 限,最多不超过5M;其次它们处理大规模的结构化数据的能力有限.鉴于传统方式的局限性,HTML5提出了三种新的离线缓存解决方案:Web SQL,indexedDB和File System. 其中Web S

HTML5 离线缓存详解(转)

离线缓存是html5新特性之一,简单理解就是第一次加载后将数据缓存,在没有清除缓存前提下,下一次没有网络也可以加载,用在静态数据的网页或游戏比较好用.当然,Html5新的特性都不是所有浏览器都能支持的,离线缓存也一样.反正IE9(包括)及IE9以下的浏览器目前是不支持的.如果用在移动端,应该都能支持.检测是否支持离线缓存也是比较简单的. if(window.applicationCache){ alert("支持离线缓存"); } else{ alert("不支持离线缓存&q

H5离线缓存机制-manifest

简介:Manifest 其实就是web应用的一种缓存机制,主要用于现在webapp应用中,它是浏览器自己的一种机制,随着移动互联网时代的到来,网络可靠性降低,如果我们已经将需要的文件缓存下下来,一旦网络无法访问,也能继续访问. 而且做好相应资源的缓存可以带来更好的用户体验,当用户使用自己的流量上网时,本地缓存不仅可以提高用户访问速度,而且大大节约用户的使用流量. 先来看下我们公司实际项目中的使用情况.(阿里淘点点也使用了manifest) 第一次加载时:整体请求是392KB耗时1.82s 当本地

Win8.1应用开发之离线缓存

我们在开发应用商店应用时,需要app具有缓存的功能,这样在离线模式下,仍能工作.我们选择的project为Hub. 这里采取的策略是:在HubPage.xaml.cs(之所以不选择App.xaml.cs,是为了能让用户一边操作界面一边进行下载)中,利用await异步编程,避免阻塞UI,先读取存有图片路径的JSON,然后解析该JSON得到每一张图片的URI,再根据URI下载图片,对于文字资源,直接下载JSON.这里要特别注意文件操作--文件权限,同时更要注意文件流的选取--如果选择不当会导致在下载

使用NSURLProtocol实现UIWebView的离线缓存

http://blog.csdn.net/youcanping2008/article/details/9240487 搜索解决方案的时候找到了Rob Napier 的博文:Drop-in offline caching for UIWebView (and NSURLProtocol) 文章介绍了使用NSURLProtocol实现UIWebView的离线缓存的简单实现,你可以在github上下载这个demo的代码. rob认为无论是"MKNetworkKit"还是"AFCa

使用NSURLProtocol实现UIWebView的离线缓存(转)

搜索解决方案的时候找到了Rob Napier 的博文:Drop-in offline caching for UIWebView (and NSURLProtocol) 文章介绍了使用NSURLProtocol实现UIWebView的离线缓存的简单实现,你可以在github上下载这个demo的代码. rob认为无论是“MKNetworkKit”还是”AFCache”实现的缓存都过于复杂,而他想要的是一个简单机制: 1.你使用了UIWebView指向来显示一个有图像嵌入的网站.2.当你的设备onl

离线缓存之MKNetworkKit

MKNetworkKit解析离线缓存之MKNetworkKit

关于离线缓存webView的新方法NSURLProtocol

博文转发自:http://blog.sina.com.cn/s/blog_6291e42d0102v0hf.html 对于目前UIWebView的离线缓存方式主要有如下几种: 1.HTML5 , Manifest最开始我的想法是使用HTML5中的离线存储功能,也就是分析Manifest文件来存储和更新部分资源文件.但是经过实践发现,UIWebView根本不支持HTML5,他只实现了Webkit中页面渲染的那一部分.所以要实现缓存必须要另辟蹊径. 2.NSURLCache  尽管在官方的说明文档里

使用NSURLProtocol实现UIWebView的离线缓存的简单实现

文章介绍了使用NSURLProtocol实现UIWebView的离线缓存的简单实现,你可以在github上下载这个demo的代码. 无论是"MKNetworkKit"还是"AFCache"实现的缓存都过于复杂,而他想要的是一个简单机制: 1.你使用了UIWebView指向来显示一个有图像嵌入的网站. 2.当你的设备online时,你有正常的缓存算法. 3.当你的设备offline时,你可以显示页面的最后一个版本. 这个demo里做了一个很简单的测试:将cnn.com