【发布时间】:2011-11-16 16:28:04
【问题描述】:
我们目前正在对一个使用 Phonegap 的应用程序进行最后润色,并遇到了一些与 Blackberry 端口有关的问题。
到目前为止,我们一直在审查在线可用的内容,但找不到真正的最终答案。似乎为 Twitter、Facebook 或 Foursquare 制作和 oauth 身份验证过程的“正确”方法是使用 ChildBrowser 插件,实例化一个窗口,然后使用它来处理该过程。
没错,Blackberry 似乎缺少 ChildBrowser 插件。到目前为止,我们一直在查看 Github 上的几个私人项目,它们看起来像是在构建/使用该功能,但我们不确定如何控制创建的窗口。
这些插件中的大多数(或全部?)指的是调用本机黑莓浏览器来处理 URL,但是由于它是另一个进程,因此如何管理回调、获取令牌并关闭窗口。
比如我们有这个概念代码:
function openWindow() {
if (typeof blackberry !== 'undefined') {
app_id = SOMETHING_HERE;
redirect = 'http://www.facebook.com/connect/login_success.html';
url = 'https://graph.facebook.com/oauth/authorizeclient_id='+app_id+'&redirect_uri='+redirect+'&display=touch&scope=publish_stream';
var args = new blackberry.invoke.BrowserArguments(url);
blackberry.invoke.invoke(blackberry.invoke.APP_BROWSER, args);
}
}
这适用于打开 URL,仅此而已。有没有办法获得窗口句柄并为事件注入一些侦听器?我们的正确做法应该是什么?
谢谢!
【问题讨论】:
标签: blackberry oauth cordova