Cordova InAppBrowser开始:在原始InAppBrowser窗口中打开一个子窗口?

时间:2014-05-30 13:47:38

标签: cordova oauth-2.0 cross-domain inappbrowser

对于令人困惑的措辞感到抱歉 - 这是关于Cordova开始的第三个级别:一个嵌套窗口,在InAppBrowser窗口内,在CordovaWebView中!

以下是我在Cordova / Phonegap项目中要完成的任务:

  1. 在InAppBrowser窗口中加载远程页面,然后......
  2. 让远程页面打开InAppBrowser中的子窗口(通过window.open()),它可以像普通浏览器环境一样控制(并且可以使用window.postMessage与之通信) )
  3. 问题在于,在InAppBrowser中,我不知道允许window.open()在InAppBrowser中创建原始页面的子窗口的方法。我可以选择的唯一行为是打开InAppBrowser中相同窗口中的链接,或打开外部浏览器应用程序中的链接。

    有没有办法在InAppBrowser 中打开链接作为第一页的子窗口?

    实际用例是我们的应用程序具有OAuth的远程登录屏幕(我们在第一个InAppBrowser窗口中加载),这反过来允许通过打开子窗口进行社交登录(通过Gigya)由社交登录提供商控制。子窗口最终向父节点发送消息,其中包含关闭循环所需的auth信息。此机制失败,因为我们无法在InAppBrowser中将该子窗口作为打开,因此无法传递消息。

0 个答案:

没有答案