我在UIWebView中显示文本和图像。内容并不总是一样的。我使用捆绑路径访问内容中的图像。对于内容版本的内容更新,我想让用户能够下载新内容(文本和图像)。这个新内容也将显示在UIWebView中。问题是我将不得不使用磁盘路径而不是使用捆绑路径的常见模式。除非有办法在运行时将图像重新打包到包中。
一旦应用程序的下一个应用程序商店更新可用,所有以前下载的图像都将在应用程序包中。在此更新中,我将写入覆盖以前的内容并使用图像的包路径。内容将完全相同,减去图像路径。
任何人都可以了解这可行的方法或更好的方法吗?
答案 0 :(得分:5)
据我所知,一旦您的应用程序发布到App Store,您就无法重新打包iPhone上的软件包。换句话说,将捆绑包中的数据放在文件系统上,以便在运行时更改它。
我常用的技巧是:
所以,基本上你的bundle只是一种传递机制,一种用你需要的东西预加载文件系统的方法。一旦它在文件系统上,你可以改变你想要的任何东西。
答案 1 :(得分:1)
同意本杰明 - 你不能改变你的包内容 相反,您可以(并且应该)将下载的内容保存到应用程序沙箱的“文档”文件夹中。你可以通过这种方式获得它的路径:
// Look in Documents for an existing plist file
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
此外,此文件夹的内容在更新期间仍然存在,因此可能没有必要将可下载的可选内容放入应用程序包中。