iOS9的UIWebView显示空白屏幕

3
我在iOS9上使用UIWebView加载应用内HTML页面时遇到了奇怪的问题-有时页面会成功加载,有时则只呈现为空白屏幕。在这些情况下,webViewDidFinishLoad函数也会被调用(但没有didFailLoadWithError)。我无法找到任何线索来解释为什么页面有时不可见。我在这里找到的许多其他问题都暗示着路径问题,但如果是这种情况,我认为它会一直失败。同样的代码在iOS 8上运行良好。

你尝试用Safari调试过它吗? - Maciek Czarnik
在Safari中调试显示HTML已经加载,但屏幕仍然是空白的。当我要求Safari重新加载页面时,它会在设备屏幕上出现,这一次是可见的。 - dww84
2个回答

6

将以下内容添加到info.plist文件中

NSAppTransportSecurity NSAllowsArbitraryLoads


谢谢。我会试一试的。 - dww84
这是解决问题的方案,然而你应该考虑在任何想确保安全正确水平的域中适当设置它。 - AppHandwerker

2
如@vmthiru所说,您需要将其添加到Info.plist文件中。尽管确切的格式应该是:
<key>NSAppTransportSecurity</key>
  <dict>
    <key>NSAllowsArbitraryLoads</key><true/>
  </dict>

意思是,如果您通过XCode UI进行操作,您需要添加NSAppTransportSecurity键(类型为Dictionary),并在其中添加一个布尔值,该布尔值的键为NSAppTransportSecurity,并将其设置为YES。
话虽如此,您可能会注意到iOS 9仍然存在一些视口错误,但这与此无关。
希望能有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接