Iphone Phonegap 链接打开方式不同,为啥?

Posted

技术标签:

【中文标题】Iphone Phonegap 链接打开方式不同,为啥?【英文标题】:Iphone Phonegap links opening differently, why?Iphone Phonegap 链接打开方式不同,为什么? 【发布时间】:2012-03-08 15:30:57 【问题描述】:

在我的 Phonegap 应用中,我有两个链接,每个链接都打开一个社交源:

<a href="http://m.facebook.com/pages/account">Go To Facebook</a>
<a href="http://mobile.twitter.com/account">Go To Twitter</a>

令我惊讶的是,这些在我的设备(iphone 4、ios5)上打开方式不同。

facebook 链接会在“应用程序”中打开,而 twitter 链接会打开一个外部 safari 窗口。

我在这里错过了什么?

PS。我非常喜欢“在应用程序中”打开 facebook 页面,但它完成了锁定应用程序,因为无法返回。有什么想法吗?

【问题讨论】:

你找到问题出在哪里了吗? 【参考方案1】:

我不知道为什么这两个链接打开方式不同,但我知道 PhoneGap 应用程序实际上是一个本机应用程序,它打开一个 WebView 并在其中加载 html 页面。所以,如果你点击一个链接,它的行为就像一个网络浏览器,只是你没有像 Go to Previous、Go to next 或 Refresh 这样的任何控件......

从这里您有多个选项,您可以选择在 Safari 中打开外部链接,然后查看此链接

http://www.tonylea.com/2011/phonegap-external-link/

或者您可以坚持在 phonegap 应用中打开链接,但您将没有任何网络控件。

要解决这个问题,我想你需要创建自己的自定义 webview 并在其中加载 url。这样您就可以向此 Web 视图添加控件,例如关闭按钮,该按钮将关闭当前打开的 Web 视图并返回给您的应用。

然后,您只需在单击链接时打开此 Web 视图。

但你需要了解一些关于 Objective-C 和 iOS 开发的知识。

希望对你有帮助

【讨论】:

以上是关于Iphone Phonegap 链接打开方式不同,为啥?的主要内容,如果未能解决你的问题,请参考以下文章

Phonegap / Cordova ios外部链接iframe无法在safari中打开

使用Phonegap打开Iphone联系人应用程序

PhoneGap 2.5.0,如何打开 iPad/iPhone 的外部 URL?

从单个链接打开原生应用商店?

Phonegap 全屏打开第三方库的外部 URL

使用 PhoneGap/jQuery Mobile 以编程方式在 iPhone/Android 日历中添加事件?