Android中的Launcher singleTask活动

前端之家收集整理的这篇文章主要介绍了Android中的Launcher singleTask活动前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在项目中启动活动时遇到问题.

我的“主页”活动(H)允许选择其中的一些服务.让我们说S11-> …-> S1n是服务的活动流程(S1). H是我的应用程序的LAUNCHER活动.

此外,我需要从H切换到另一个应用程序并返回到它.由于我无法更改该应用程序行为,因此我必须将我的H活动声明为“singleTask”,以防止在我的活动堆栈中有多个实例.

问题是我的应用程序无法在不切断H之后推送的活动的情况下重新启动.因此,例如,如果我有H-S11-S12,然后按HOME并从最近的应用程序菜单重新启动,我将H作为前台活动.

有任何想法吗?有没有办法让这个组合起作用?谢谢!

解决方法

你不需要singleTask.使用startActivityForResult而不是startActivity.
或使用Fragments而不是Activities
startActivityForResult(new Intent(H.this,S11),1);

public onActivityResult(int requestCode ){
    if(requestCode == 1){
       startActivityForResult(new Intent(H.this,S12),2);
    }else if(requestCode == 2){
       startActivityForResult(new Intent(H.this,3);
    }
    ...
}

猜你在找的Android相关文章