我有这种情况.我有一个活动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,但是有一些代码可能是有用的.