【问题标题】:How to execute HTML file on iPhone (Objective C)?如何在 iPhone 上执行 HTML 文件(目标 C)?
【发布时间】:2023-03-17 10:10:02
【问题描述】:

我正在尝试从 iPhone 上的 Objective C 中启动一个 HTML 文件。我已经创建了文件,但我无法执行它。我怀疑我没有完全正确地形成 URL 或正确指定 openURL 命令。

代码如下:

NSLog(@"HTMLurl: %@", [HTMLurl absoluteURL]); if (![[UIApplication sharedApplication] openURL:HTMLurl]) { NSLog(@"URL failed to open."); }

HTMLurl 包含以下内容:

file://localhost/var/mobile/Applications/E43AB0A2-C868-497C-9164-DA101372AD5D/Documents/HTMLfileout.html

我能够使用相同的代码来播放音频,在另一个 url 中指定:

file://localhost/var/mobile/Applications/E43AB0A2-C868-497C-9164-DA101372AD5D/Documents/audiofileout.mp3

但是 html 代码返回一个 nil 并且没有任何反应。

这是我创建网址的方式:

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSString* HTMLFilePath = [documentsDirectory stringByAppendingPathComponent:@"HTMLfileout.html"];
HTMLurl = [NSURL fileURLWithPath:HTMLFilePath];

NSLog(@"HTMLurl: %@", [HTMLurl absoluteURL]);
NSData* outputData = [LTTInterface getCompressedHTMLData];
[outputData retain];

提前谢谢你。我知道有很多关于格式化 url 的问题已经得到解答,但我不能自己解决这个问题。

你的, 肯

【问题讨论】:

  • 执行一个 HTML 文件?你的意思是你想像在浏览器上一样显示 HTML 文件?
  • 是的,在浏览器中显示 HTML 文件。

标签: iphone html ios file url


【解决方案1】:

请查看UIApplicationopenURL: 的文档

UIKit 支持 http:、https:、tel: 和 mailto: 方案。

更新:

使用UIWebView

[_webView loadHTMLString:[NSString stringWithFormat:@"<html><body style='background-color:#000; color:#FFF'>Test</body></html>",content] baseURL:nil];

使用您的字符串而不是给定的 html 字符串。

【讨论】:

  • 是的,我在那儿花了很多时间,并不意味着我足够聪明,可以理解它!我对所有选项感到有些困惑,我认为我的 URL 格式与正确的调用格式不匹配。但这只是猜测。
  • 我的答案是否符合您的要求,或者如果您仍有疑问,请发布。
  • Gomathi,我昨晚在你更新答案之前崩溃了。现在我必须弄清楚如何实现 webview,我在这里找到了一个示例,chrisdanielson.com/tag/uiwebview。我应该在今天晚些时候解决这个问题,谢谢。
  • 我想我们已经接近了,但到目前为止还没有雪茄。我预加载了 HTML 文件并硬编码了测试地址。使用您的代码:/
  • 我想我们已经接近了,但到目前为止还没有雪茄。我预加载了 HTML 文件并硬编码了测试地址。根据您的建议使用代码,我只是在屏幕上显示了我的地址行。 UIWebView *webView = [[UIWebView alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; NSString *urlAddress = @"file://localhost/var/mobile/Applications/E43AB0A2-C868-497C-9164-DA101372AD5D/Documents/HTMLfileout.html"; [webView loadHTMLString:[NSString stringWithFormat:urlAddress] baseURL:nil]; [self.view addSubview:webView];接下来我将发布更多示例。
猜你喜欢
  • 1970-01-01
  • 2010-12-23
  • 1970-01-01
  • 1970-01-01
  • 2011-07-08
  • 2018-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多