UIWebView 对某些 iOS 9 用户显示空白(罕见且奇怪)

Posted

技术标签:

【中文标题】UIWebView 对某些 iOS 9 用户显示空白(罕见且奇怪)【英文标题】:UIWebView shows blank for some iOS 9 users (rare and strange) 【发布时间】:2016-02-15 06:17:49 【问题描述】:

我在 viewController 上有一个 UIWebView,通常它会加载我自己网站的网页。但最近我发现 UIWebView 对于一些用户来说似乎是空白的。只是一个灰色的空白屏幕(我将其背景颜色设置为灰色)。

我正在使用:

UIWebView* webView = [[UIWebView alloc] initWithFrame:self.view.bounds];
webView.scalesPageToFit = YES;
webView.delegate = self;
webView.scrollView.delegate = self;
webView.opaque = NO;
webView.backgroundColor = [UIColor lightGrayColor];
[self.view addSubview:webView];
self.webView = webView;

和:

NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:request];

我了解到以下事实:

    这不是 https url,我在 Info.plist 中允许任意加载。

    那些用户之前可以在那个 UIWebView 上看到那个网页的内容。 然后突然有一天,在没有升级、重新安装应用程序或系统的情况下,UIWebView 对他们来说变成了空白.我很确定这是同一个 url 链接。

    这些用户可以在他们的 safari 中访问该特定链接。他们可以在我的应用中访问不同主机的网址。

    如果他们手动终止应用程序并重新打开它,它仍然是空白的。 即使他们删除了应用并从 AppStore 重新安装,它仍然是空白的。

    然后几天后,没有做任何特别的事情,UIWebView 恢复正常。问题消失了。

    有一次我能够从用户那里借用一部有该问题的手机。当我插入手机并从 XCode 运行调试时,它立即恢复正常。

这个错误让我发疯,因为它的奇怪行为,而且它真的必须重现。到目前为止,我已经收到了 4 个关于这个 bug 的报告,它们都是来自 ios 9 用户,没有特定的设备。如果有帮助的话,那个有问题的网页由 angularJS 提供支持。

我现在还没有任何线索。任何建议都会有所帮助。提前致谢!

【问题讨论】:

可以给我们看看网页吗? 【参考方案1】:

我发现问题出在服务器端。傻我。

【讨论】:

以上是关于UIWebView 对某些 iOS 9 用户显示空白(罕见且奇怪)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 的某些文件输入字段上获取 UIWebView 中 UIImagePicker 选择的图像?

维护 Cookie UIWebView iOS Xamarin

在 UIWebView 中仅显示网页的某些尺寸

在 UIWebView 中显示“.doc”和“.docx”

检测 webview 视频何时在 ios8 上变为全屏

在 iOS 9 中遇到 WKWebview 和 UIWebView 问题