我的BlackBerry应用程序正在使用BrowserSession打开网页。当网页打开时,用户将输入他们的登录凭据,然后将他们转发到新网站,告知他们关闭BlackBerry Browser并返回我的应用程序。 (... OAuth身份验证)
现在,我正在尝试查看是否可以执行以下操作之一:
为我的应用程序创建自定义URI方案,以便网站可以转发到“myapp:// ...”等地址,我的应用程序将打开。我一直在网上和论坛上研究这个问题,我认为不可能。我一直在搜索JSR 211以及内容处理程序和MIME类型。我还查看了JDE示例中的chapidemo演示。
关闭BrowserSession。我知道我不能在我的申请中做到这一点。在我的应用程序成功发出http请求后,我成功地将我的应用程序移到了前台,但是当网站转发到新页面(告诉用户关闭浏览器)时,浏览器返回到前台
以某种方式确定当前BrowserSession的URL。如果我能做到这一点,那么当我识别转发到的页面的URL时,我可以将我的应用程序放到前台。
不幸的是,我无法使用BrowserField,因为我在浏览器中打开的网站需要支持javascript和ajax ...我在BrowserField中试过这个,但它没有用。
有没有人有任何意见或建议?
谢谢!
更新
我要注册的代码:
BrowserContentProviderRegistry converterRegistry = BrowserContentProviderRegistry
.getInstance();
if (converterRegistry != null) {
converterRegistry.register(new BrowserPlugin());
}
答案 0 :(得分:3)
您可以使用BrowserContentProviderRegistry类为自定义MIME类型的应用注册自定义BrowserContentProvider实现。完成OAuth后,将其重定向到您网站上提供该MIME类型文档的页面。这将导致您的BrowserContentProvider被执行,然后可以执行任何您喜欢的操作,例如将应用程序带回到前台。