webview正在模拟器中加载但未加载到设备中

时间:2016-06-07 09:52:56

标签: ios swift webview

我试图在swift中加载UIWebView到目前为止能够在模拟器中调用和加载webservices而没有任何问题,包括webview和json服务。

但是当我尝试在设备中加载所有其他网络服务时,UIWebView除外。

let url = "http://192.168.1.233/PhpProject1/MoreDetails.php?id=1234"


 UIWebView.loadRequest(webView)(NSURLRequest(URL: NSURL(string: url)!))

我检查了日志,但在调用设备中的UIWebView后没有任何反应。

问题是只有webview没有加载到设备中,我可以调用所有其他的web服务,一切都在模拟器中正常工作。

2 个答案:

答案 0 :(得分:0)

192.168.1似乎是私有 LAN ,您的MAC PC可能通过有线电缆(以太网电缆)访问。如果您通过 WIFI 连接了iPhone,可能它不是同一个局域网,或 WIFI 无法访问192.168.1.x.检查你的连接。

Apple提供 reachability 类,您可以使用该类检查两个设备(PC和iPhone)的Reachability(hostname: <your host>)是否为真。您还可以在gitHub中查看快速翻译的可达性here,有很多示例可以解决这个问题。

答案 1 :(得分:0)

从ios 9苹果推出NSAppTransportSecurity意味着你无法从你的设备上点击http服务器。所以你必须使用https的网址。但是你仍然可以通过在info.plist中添加异常来命中http。为此你可以看到这个链接

How can I add NSAppTransportSecurity to my info.plist file?

正如其他人所说,总是使用可达性类来检查服务器是否可达:)