将资产预加载到NSURLCache中

时间:2012-09-24 19:39:23

标签: iphone objective-c ios ios5

我们有一个拥有多个静态资产的移动应用。特别相关的是440k的“供应商”javascript ......像Backbone和jQuery这样的东西,以及上面提到的各种插件和附件。供应商的东西变化频率低于ios应用程序本身...可能每两个月一次。因此,它是预加载到我们通过Apple分发的应用程序映像的主要候选者。我的问题是:如何将NSURLCache作为资产预加载我的位?

理想情况下,我会:

1)将vendor_assets.js捆绑到我的应用程序的发行版

2)在启动时,调用类似[NSURLCache preloadAsset:“vendor_assets.js”,[NSData fromFile:“vendor_assets.js]]

3)加载UIWebView,然后请求“vendor_assets.js”(加上所有其他文件

4)因为“vendor_assets.js已经在缓存中,我们为用户节省了440k的下载带宽。更快的启动时间。更多的钱。促销。香槟。荣耀。永恒的实现。所有这一切。

我该怎么做?我整天都在撞墙,直到目前为止,我所拥有的只是一个血腥的额头。

1 个答案:

答案 0 :(得分:3)

我刚刚专门针对这种情况创建了一个NSurLCache子类。您可以在https://github.com/evermeer/EVURLCache

找到它