文章来源:淘论文网   发布者: 毕业设计   浏览量: 25



还可以点击去查询以下关键词:
[缓存]    [Swift]    [框架]    [Mattress]    [iOS缓存Swift框架 - Mattress]   

项目介绍:

项目简介
Mattress是一个将整个web页面储存到磁盘缓存中的Swift框架,不同于NSURLCache,但是两者可以共同作用。这对更快的预缓存Web组件,以及使Web组件可用于脱机浏览,都是十分有用的。

安装

Mattress包含一个CommonCrypto的封装,所以你可以在Swift中很方便的使用。你要保证Mattress和CommonCrypto框架都include到你的项目中。

Carthage(推荐)

首先需要安装Carthag e: Homebrew

$ brew update
$ brew install carthage
之后可将本项目添加到你的Carfile中

github "buzzfeed/Mattress" >= 1.0.0
然后你需要用Carthage建立,手动将Mattress和CommonCrypto框架集成到你的项目中。

$ carthage build
CocoaPods

首先使用RubyGems安装CocoaPods

$ gem install cocoapods
安装之后将该项目添加到Podfile

pod 'Mattress', '~> 1.0.0'
使用方法

首先要创建一个URLCache实例,在你的 application:didFinishLaunching: method 中将它设置为你的应用程序的共享缓存。

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

let kB = 1024 let MB = 1024 * kB let GB = 1024 * MB let isOfflineHandler: (() -> Bool) = { // This is for demonstration only. // You should use Reachability or your preferred method to determine offline status // and return a proper value here. return false } let urlCache = Mattress.URLCache(memoryCapacity: 20 * MB, diskCapacity: 20 * MB, diskPath: nil, mattressDiskCapacity: 1 * GB, mattressDiskPath: nil, mattressSearchPathDirectory: .DocumentDirectory, isOfflineHandler: isOfflineHandler) NSURLCache.setSharedURLCache(urlCache) return true

}
为了在Mattress磁盘缓存中缓存一个网页,开题报告,简单的调用URLCache的 diskCacheURL:loadedHandler: method。

NSLog("Caching page")
let urlToCache = NSURL(string: "https://www.google.com")
if let

cache = NSURLCache.sharedURLCache() as? Mattress.URLCache, urlToCache = urlToCache

{

cache.diskCacheURL(urlToCache, loadedHandler: { (webView) -> (Bool) in /* Note: The below code should work for fairly simple pages. However, if the page you are attempting to cache contains progressively / lazily loaded images or other assets you will also need to trigger any JavaScript functions here to mimic user actions and ensure those assets are also loaded before returning true. */ let state = webView.stringByEvaluatingJavaScriptFromString('document.readyState') if state == 'complete' { // Loading is done once we've returned true return true } return false }, completeHandler: { () -> Void in NSLog('Finished caching') }, failureHandler: { (error) -> Void in NSLog('Error caching: %@', error) })

}
缓存成功之后,你可以在一个UIWebView中简单的加载,开题报告,它可以从Mattress缓存中加载,就像魔法一样。

github地址:https://github.com/buzzfeed/mattress


这里还有:


还可以点击去查询:
[缓存]    [Swift]    [框架]    [Mattress]    [iOS缓存Swift框架 - Mattress]   

请扫码加微信 微信号:sj52abcd


下载地址: http://www.taolw.com/down/7577.docx
  • 上一篇:仿淘宝闲鱼的TabBar
  • 下一篇:类似太阳动定制画的button