UIWebView 无法正确读取一些本地 HTML5 内容
UIWebView cannot read correctly some local HTML5 stuff
Objective-C 开发者:
我给大家带来了新的挑战
我正在尝试从 Articulate 加载一些 HTML5 导出到 UIWebView。嗯,乍一看很简单:只需将 HTML5 资源放入项目并调用 index.html。
嗯,如果 HTML5 资源具有复杂的 javascript 结构,那根本行不通。特别是 <audio>
和 <video>
标签。
有什么想法吗?
我已经调查了几个小时,解决方案出现了一些横向思考:
如果主要问题是本地阅读不起作用,但应用程序要求您必须离线维护内容,那么让我们在本地提供内容吧!。
以下是我解决此问题所遵循的步骤:
- 将 Web 服务器嵌入到您的应用程序中(我更喜欢 GCDWebServer)
- 让 GDCWebServer 在本地为您的故事情节提供服务:
[webServer startWithOptions:@{@"BindToLocalhost": @YES} error:nil];
- 使用
WKWebView
调用您的本地网络服务器:[wkView loadRequest:[NSURLRequest requestWithURL:webServer.serverURL]];
然后您将看到您的 Articulate 故事情节在 window 内的应用程序中完美运行,iOS8。
希望这对某人有所帮助。
Objective-C 开发者:
我给大家带来了新的挑战我正在尝试从 Articulate 加载一些 HTML5 导出到 UIWebView。嗯,乍一看很简单:只需将 HTML5 资源放入项目并调用 index.html。
嗯,如果 HTML5 资源具有复杂的 javascript 结构,那根本行不通。特别是 <audio>
和 <video>
标签。
有什么想法吗?
我已经调查了几个小时,解决方案出现了一些横向思考:
如果主要问题是本地阅读不起作用,但应用程序要求您必须离线维护内容,那么让我们在本地提供内容吧!。
以下是我解决此问题所遵循的步骤:
- 将 Web 服务器嵌入到您的应用程序中(我更喜欢 GCDWebServer)
- 让 GDCWebServer 在本地为您的故事情节提供服务:
[webServer startWithOptions:@{@"BindToLocalhost": @YES} error:nil];
- 使用
WKWebView
调用您的本地网络服务器:[wkView loadRequest:[NSURLRequest requestWithURL:webServer.serverURL]];
然后您将看到您的 Articulate 故事情节在 window 内的应用程序中完美运行,iOS8。
希望这对某人有所帮助。