gpt4 book ai didi

iphone - 将文件保存到 Web View 可以看到的用户设备

转载 作者:行者123 更新时间:2023-11-29 05:02:07 25 4
gpt4 key购买 nike

我有一个混合(Objective C + HTML)应用程序,我希望能够定期将远程文件(图像和 css)保存到用户的设备,但可以通过浏览器在其中加载它同一应用程序中的 webview 实例。

我认为不可能将文件保存到资源包本身(尽管在模拟器中可以),所以我认为我必须将文件保存到其他地方。但我不确定使用什么路径 HTML 文档仍然可以访问它。

基本上,我想做这样的事情:

    NSURL* url = [NSURL URLWithString:@"http://myserver.com/August.png"];
NSString* filePath = @"[?????]/MonthlyImage.png";
NSData* data = [NSData dataWithContentsOfURL:url];
if (data)
{
NSError* error;
if ([data writeToFile:filePath options:NSDataWritingAtomic error:&error])
{
NSLog(@"Wrote");
}
if (error != nil)
{
NSLog(@"ERROR: %@", [error description]);
}
}

然后在我的 WebView 中,我希望能够像这样加载图像:

<img src="[??????]/MonthlyImage.png" />

我可以使用什么值来代替有效的 ???????这可能吗?

最佳答案

不允许保存到 bundle ,因为不允许修改应用程序二进制文件。

您可以尝试将该文件存储在文档文件夹中,然后从那里检索它。为了使其工作,重要的一点是还指定 baseURL创建 UIWebVIew 时.

您可以通过以下方式检索文档目录:

NSString *documentsDirectory = nil;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
if ([paths count] > 0) {
documentsDirectory = [paths objectAtIndex:0];
}

然后您将文件存储在那里,当您想要将其加载到 UIWebView 时,执行:

    [_label loadHTMLString:htmlString baseURL:[NSURL fileURLWithPath:documentsDirectory]];

现在,<img src="MonthlyImage.png" />将在您的文档目录中查找 png。

关于iphone - 将文件保存到 Web View 可以看到的用户设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6680645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com