我正在编写一个iOS应用程序,它将在离线的UIWebView中加载KRPano全景图。这意味着我已经在我的KRPano项目中复制了我的index.html文件结构(index.html + data目录),并且我试图使用快速代码加载该文件:
//load a file
guard let urlResource = NSBundle.mainBundle().URLForResource("index", withExtension: "html") else {
print ("error")
return
}
let webRequest = NSURLRequest(URL: urlResource)
webView.loadRequest(webRequest)如果全景图是从远程位置加载的,则可以工作。有什么问题吗?
发布于 2016-05-21 09:41:00
没有人工编辑Krpano文件是不可能的。我们在应用程序(离线页面Pro)中通过自动修复从网络下载的JavaScript文档来解决这个问题。我们的实现非常复杂,但最终它允许脱机浏览Krpano旅游。
问题是Krpano HTML5查看器使用XMLHttpRequests加载内容。如果内容是本地的(即文件://),XMLHttpRequest也可以成功,但它不会产生Krpano期望的HTTP代码200。
您可以尝试实现NSURLProtocol来覆盖XMLHttpRequests,并且它可能在IOS 9中工作,但从iOS 8开始,它无法工作,因为XMLHttpRequests完全绕过了NSURLCache和NSURLProtocol。
https://stackoverflow.com/questions/34845156
复制相似问题