【发布时间】:2014-08-08 09:03:05
【问题描述】:
我可以打开我的窗口,在里面做很多事情,例如通过 Linkedin 或 Facebook 登录。但我无法关闭它以返回我的应用程序。
1/ 当 url 包含特定关键字时,我尝试捕获事件以跟踪 url 并关闭窗口。但是该事件永远不会被触发。我从来没有任何警报。
var ref = window.open(url, '_blank', 'location=no');
ref.addEventListener('loadstart', function(event)
{
alert(event.url);
});
ref.addEventListener('loadstop', function(event)
{
alert(event.url);
});
2/ 所以我试图找到一种方法,每 n 秒从第一个窗口检查 ref.location.url。但是 ref.location.url 不存在。我看不到从父窗口访问 inapp 当前 url 的方法。
3/ 我想给 inapp 窗口起个名字。但是 inappbrowser 插件不允许为要打开的窗口命名。所以父窗口也不能这样检查子窗口的url。
4/ 我试图让子应用程序窗口关闭:cordova 不希望 javascript 关闭当前窗口。
self.close(); => cannot
window.close(); => cannot
5/ 我尝试恢复为 cordova.js 2.9.0-0-g83dc4bd ,但效果不佳。
所以,我可以在我的应用程序中打开一个弹出窗口并使用第三方 Oauth,但是我被困在这个弹出窗口中,无法返回我的应用程序。
我几乎检查了我在互联网上能找到的所有内容,但我现在完全不知道该怎么做。
我使用 cordova.js 3.5 Android build ,并使用
安装 inappbrowsercordova plugin add org.apache.cordova.inappbrowser
一切都是标准的,cordova.js 已正确加载,我可以在日志中看到 InappBrowser 在我调用时正确使用。
08-08 16:20:20.594: D/InAppBrowser(8496): target = _blank
Err... 帮助?
:)
【问题讨论】:
标签: cordova inappbrowser