【问题标题】:Phonegap: External links not opening in Safari on iOS 9Phonegap:外部链接未在 iOS 9 上的 Safari 中打开
【发布时间】:2015-09-16 17:35:00
【问题描述】:

当尝试使用
window.open("www.google.com", '_system') 方法在 iOS 9 上使用 phonegap 打开外部 URL 时,它会打开应用程序内的链接,但它应该在 Safari 中打开它。在 iOS 8 上,链接在 Safari 中打开就好了.

【问题讨论】:

  • 能告诉cordova ios版本、插件版本和xcode版本吗?你确定你可以打开没有http的url吗?
  • 我有Phonegap(和Cordova)版本5.3.1,inAppBrowser 版本1.0.1(最新来自github)和xcode 7。问题不是我无法打开网址,而是网址在应用程序内打开,但它们应该在 Safari 中打开。
  • 刚刚创建了一个新项目,从github添加了inAppBrowser,在准备好的设备上添加了window.open("http://www.google.com", '_system');并在ios 9上运行,它工作正常(它在safari中打开)
  • @jcesarmobile 您是在模拟器中还是在实际设备上尝试过?无论出于何种原因,它在模拟器上对我有用,但在设备上却不行。
  • iPhone 6 和 iOS 9 GM 和最终的 iOS 9

标签: ios cordova phonegap-plugins window.open inappbrowser


【解决方案1】:

以下对我有用。 1.更新cordova CLI

sudo npm upgate -g cordova
  1. 更新平台

    cordova 平台更新 ios

  2. 创建一个新项目。

  3. 用旧的替换 www 文件夹和 config.xml 文件的内容。
  4. 添加 ios 平台并构建。

请注意:您可能会在 iOS9 上遇到一些问题,例如一些冲突的代码,您可能需要 google 并修复这些问题。

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    您能否验证是否已安装 InAppBrowser 插件?

    cordova plugin list
    

    您需要该插件才能使 window.open() 正常工作。

    【讨论】:

    • 我遇到了同样的问题,我安装了 inappbrowser 插件。
    • 是的,inAppBrowser 插件已安装并且可以在所有其他平台上正常工作。
    【解决方案3】:

    事实证明,在更新 PhoneGap 后,在 OS X 中构建时,iOS 的插件将不再加载。当我在 Windows 中构建它时(使用旧的 phonegap-ios 3.8.0,而不是 3.9+),它加载了插件正确。所以问题与 iOS 9 无关,而与 PhoneGap 有关。

    【讨论】:

      猜你喜欢
      • 2016-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多