从UIWebView *启动移动Safari而不*修改应用程序源?

时间:2010-12-17 02:55:33

标签: javascript iphone html5 uiwebview mobile-safari

我正在开发一个只能在UIWebView内部查看的小网站,而且一个页面有几个指向外部网站的链接。我希望这些在移动版Safari中打开,但应用程序内的所有链接都会在webview中加载。修改应用程序的来源不是一种选择,因为在提交任何更改之前,网站需要处于活动状态。

有没有办法强制UIWebView中的链接使用HTML / 5或Javascript启动移动Safari?模仿shouldStartLoadWithRequest?偷偷摸摸,黑客的解决方案或出色的替代解决方案?

(而且,出于纯粹的好奇心......为什么不呢?)

2 个答案:

答案 0 :(得分:1)

让网站通过简单的HTML访问iPhone上的框架是不好的设计。这将打开各种安全漏洞。它不是您想要更改的Web行为,因此我认为您可能需要更改应用程序源。我仍然不明白为什么那不是一个选择。你能深入研究一下吗?

答案 1 :(得分:0)

一种选择是添加自定义URL处理程序。然后,您的网站可以确定“broswer”是否为应用,并为您希望在应用中维护(即打开)的链接提供自定义网址。然后,任何标准HTTP / s URL都将在Mobile Safari中打开。

换句话说,让您的网络服务器提供myappurl://等网址,用于您希望应用处理的链接,http://可以打开Mobile Safari。