2012-06-25 44 views
1

我正在构建一个Twitter应用程序,该应用程序打开一个网页以允许某人授权我的应用程序。一旦用户验证了该网站,就会出现该问题。它将我返回到我的url,从中我想关闭浏览器窗口以返回到我的本机应用程序。我试过以下,但浏览器窗口仍然打开:将用户从浏览器返回到Android应用程序

<script> 
     window.close(); 
     window.self.close(); 
    </script> 

用户目前必须返回主屏幕并再次找到我的应用程序。

是否有JavaScript将用户返回到我的应用程序?

谢谢!

回答

3

您应该在您自己的应用程序中使用WebView,而不是使用浏览器应用程序进行登录,因为您无法关闭它。

创建一个带WebView的登录Activity,加载Twitter登录页面。为该WebView实施自定义WebViewClient,覆盖onPageFinished方法并检查URL参数是否等于您的登录重定向目标URL。从URL或页面解析访问令牌(我不知道这里的确切技术细节,对不起)。

然后,您可以将访问令牌存储在应用程序专用数据库或首选项文件中,最后完成登录活动,这会使您回到上一个活动。

请注意:您应该在<脚本中指定type =“text/javascript”参数>标签,否则根据浏览器的不同,这些标签可能会被忽略。

相关问题