Android 活动仍保留在屏幕上

Android 活动仍保留在屏幕上,android,Android,我有一个服务正在收听一些事件。 当该事件发生时,它通过startActivity(意图)显示屏幕 当用户在该屏幕上完成某项操作时,代码将调用finish() 但它显示的不是“关闭”整个应用程序,而是主/启动器活动 我的意思是,从当前视图中删除所有应用程序屏幕的最佳方法是什么? 或者有什么方法可以解决这个问题?主要活动可能尚未完成,因此仍在活动堆栈中。我不确定正确的解决方案,但也许这有帮助 方法finish()只完成从中调用它的活动 如果要从堆栈中删除第一个活动,则必须在调用startActivi

我有一个服务正在收听一些事件。 当该事件发生时,它通过startActivity(意图)显示屏幕

当用户在该屏幕上完成某项操作时,代码将调用finish() 但它显示的不是“关闭”整个应用程序,而是主/启动器活动

我的意思是,从当前视图中删除所有应用程序屏幕的最佳方法是什么?
或者有什么方法可以解决这个问题?

主要活动可能尚未完成,因此仍在活动堆栈中。我不确定正确的解决方案,但也许这有帮助

方法
finish()
只完成从中调用它的活动


如果要从堆栈中删除第一个活动,则必须在调用
startActivity(intent)
后立即调用finish。这将从堆栈中删除初始活动,因此新调用的活动是其中唯一的活动,关闭它将不会留下任何内容。

这有点过分了。。。但是我使用它来实现quit()函数

int pid = android.os.Process.myPid();
android.os.Process.killProcess(pid);
System.exit(0);
finish();

答案是错误的,因为服务调用startactivity,所以我们不能在此之后调用Finish,因为它从服务开始,而不是从第一个活动开始。它看起来像是因为它是默认的,它是同一个组的一部分或者其他什么。所以,问题是,当它激活你的应用程序时,服务打开了多个活动?您正在调用的活动是否可以通过清单直接访问?这也可能是因为该应用程序已经是“实时”的,并且通过调用一个儿童活动而被推到了前台。