返回调用活动时如何关闭浏览器活动



我有这种情况。我有一个活动A,它发送了一个创建活动B的意图,该活动B是一个浏览器,用于使用用户的twitter帐户对其进行身份验证。提交凭据后,控件将再次返回到活动A,我可以继续在应用程序中导航。但是,如果用户离开应用程序,浏览器活动将恢复,迫使用户关闭浏览器。

问题是,一旦我获得身份验证凭据,我想从堆栈中删除浏览器活动。

你知道这是否可能吗?我不能使用startActivityForResult,因为身份验证需要在浏览器中进行,我无法控制该活动。非常感谢

编辑:

我开始这样的活动:

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(authUrl)).setFlags(Intent.FILL_IN_ACTION));

也许你可以在活动B的OnResume()中放入一些东西,它会检查这是否是活动B的第一次激活,如果不是,则会自动关闭它?

更新:您也可以使用AsyncTask将凭据信息发布到网站,使用DefaultHttpClient和HttpPost。不幸的是,我只在这个场景中使用了HttpGet,但这里有一些代码可能有用。

最新更新