我无法控制Intent的行为。
用例是这样的: 当用户在Chrome中浏览互联网并点击菜单,共享然后在我的应用上时,会打开一个屏幕,允许用户编辑某些信息。当用户完成编辑后,他或她可以点击"完成,选择聊天以发布"。然后打开一个包含所有可用聊天的新活动。
此时,用户应该可以按标准后退按钮返回编辑活动,或者用户可以点击聊天发布。
如果用户点击聊天并发布链接,则新的活动开始聊天,允许用户继续聊天或按回以返回浏览器而不是选择聊天"活动或"编辑信息"活性。
基本上我希望能够做到以下几点:
用例1:[浏览器] - > [分享] - > [编辑信息] - > [选择聊天]。 (后退按钮返回[编辑信息]。
用例2:[浏览器] - > [分享] - > [编辑信息] - > [选择聊天] - > [打开聊天]。 (后退按钮返回[浏览器]。
我在启动[编辑信息]和[选择聊天]时尝试了各种Intent标志组合,但没有人给我我想要实现的行为。
所以我的问题是:如何清除我的应用程序的后退历史记录,允许用户返回上一个应用程序,但仅当用户完成指定的过程时(在这种情况下,实际上是在聊天中发布链接) )?
答案 0 :(得分:1)
在创建Open Chat活动时,请使用此标记
Intent i = new Intent();
i.setClass(getActivity().getApplicationContext(), YourActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(i);