如何将外部 URL 加载到我的 webview 中?
Posted
技术标签:
【中文标题】如何将外部 URL 加载到我的 webview 中?【英文标题】:How can I load an external URL into my webview? 【发布时间】:2016-08-19 13:45:44 【问题描述】:我使用带有 onesignal 插件的 Cordova 项目 (Xcode)。 单击通知时,我想加载带有目标 URL 的 webview。
第一个方法很糟糕:它正在打开外部 Safari 浏览器。
第二种方法:
[[NSURLCache sharedURLCache] removeAllCachedResponses];
for (UIView *view in self.view.subviews)
if ([view isKindOfClass:[UIWebView class]])
[[NSURLCache sharedURLCache] removeAllCachedResponses];
UIWebView webView = (UIWebView )view;
NSURL *websiteUrl = [NSURL URLWithString:urlstr];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:websiteUrl];
[webView loadRequest:urlRequest];
[webView reload];
它只是让我黑屏。
如何使用 Xcode 将外部 URL 加载到我的 webview Cordova 中?
【问题讨论】:
Xcode 有什么错误吗? 另一种解决方案是在消息中发送 URL。然后用notificationOpenedCallback
拦截它并在应用程序中打开InAppBrowser插件的URL。
如果真的是黑屏,这听起来像是视图布局问题,即 Web 视图没有占用任何空间,要么是因为它被隐藏了,要么是因为没有设置边界正确(或根本),或由于某种 AutoLayout 问题。如果您的意思是“空白”(例如在具有白色背景和搜索框的 Web 视图中),那么我不确定发生了什么。
xcode 中没有错误
【参考方案1】:
如果你不关心在应用程序中保留 URL,你可以简单地做一个
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];
【讨论】:
以上是关于如何将外部 URL 加载到我的 webview 中?的主要内容,如果未能解决你的问题,请参考以下文章