从 Cordova 应用程序打开 Safari 网页
Posted
技术标签:
【中文标题】从 Cordova 应用程序打开 Safari 网页【英文标题】:Opening safari webpage from Cordova app 【发布时间】:2014-06-13 10:26:46 【问题描述】:我正在使用 Cordova 框架开发一个由 html 和 CSS 组成的应用程序。 有一个按钮应该打开一个网页。问题是它打开的是应用程序内部的网页,而不是 safari。
我对 Objective C 的了解非常有限(没有),所以我希望有一个可能使用 javascript 的解决方案。
我浏览了整个互联网,但找不到非 Objective C 解决方案。
按钮非常简单:<a href="http://www.mywebsite.com/" target="_blank"><img src="img/button.jpg" alt="website"></a>
我认为 target="_blank"
可能会为我做点什么,但那(不出所料)没有用。
【问题讨论】:
查看***.com/questions/10244965/… @NijilNair 我试过了,但它会打开应用程序内部的网页。 【参考方案1】:你可以使用inappbrowser插件
http://cordova.apache.org/docs/en/3.3.0/cordova_inappbrowser_inappbrowser.md.html#InAppBrowser
使用 javascript 或 jquery 检测点击链接并使用以下代码
window.open('http://www.google.com', '_system', 'location=yes');
【讨论】:
我尝试执行该页面上指定的终端命令,但它一直说“找不到命令”。 @Parrotmaster 你在用什么? phonegap 或科尔多瓦。如果您使用的是phonegap,那么您需要使用phonegap 而不是cordova。我假设您之前使用过 CLI 来创建 cordova 应用程序,所以您知道在命令之前不需要这个$
。在您的项目文件夹中尝试cordova plugin add org.apache.cordova.inappbrowser
或phonegap plugin add org.apache.cordova.inappbrowser
。 cd
到您的项目文件夹并尝试它们。这应该有效。
我正在使用 Cordova。我会先尝试cd
。
我在所有目录(xcode-projects、项目本身、项目文件夹内的cordova文件夹)都试过了,但它一直说“找不到命令”。
我发现我的cordova版本是2.0.0。我会尝试更新它,然后使用 inappbrowser 插件。【参考方案2】:
我找到了问题的答案:
Opening all URL's with Cordova childbrowser
唯一的问题是它会自动打开 twitter.com,因为共享按钮出于某种未知原因。我猜这是因为它在加载时执行的 api 调用。
【讨论】:
以上是关于从 Cordova 应用程序打开 Safari 网页的主要内容,如果未能解决你的问题,请参考以下文章
Cordova 3.1 在 iOS6 上的 Safari 中打开链接
PhoneGap/Cordova 打开外部链接到 Safari 而不是全屏 inApp
Phonegap / Cordova ios外部链接iframe无法在safari中打开