Android 停止例行服务从将现有后台进程带到前台开始

Android 停止例行服务从将现有后台进程带到前台开始,android,service,Android,Service,我有一个应用程序,当主应用程序活动在屏幕上处于活动状态时,它会使用AlarmManager以设定的时间间隔进行轮询。我遇到的问题是,如果应用程序的进程在后台(尚未终止),并且服务开始轮询,它会将主要的应用程序活动带到前台 我该如何阻止这种情况发生?本质上,我希望应用程序的所有进程都保留在后台,除非用户另有选择 谢谢 我遇到的问题是,如果应用程序的进程在后台(尚未终止),并且服务开始轮询,它会将主要的应用程序活动带到前台 然后您正在调用startActivity(),或者可能调用startFore

我有一个应用程序,当主应用程序活动在屏幕上处于活动状态时,它会使用AlarmManager以设定的时间间隔进行轮询。我遇到的问题是,如果应用程序的进程在后台(尚未终止),并且服务开始轮询,它会将主要的应用程序活动带到前台

我该如何阻止这种情况发生?本质上,我希望应用程序的所有进程都保留在后台,除非用户另有选择

谢谢

我遇到的问题是,如果应用程序的进程在后台(尚未终止),并且服务开始轮询,它会将主要的应用程序活动带到前台


然后您正在调用
startActivity()
,或者可能调用
startForeground()
(我不知道
startForeground()
会将现有任务推到前台,但我没有尝试过,也无法排除它)。

您能给我们看一些相关的代码吗?AlarmManager发送的PendingEvent是什么,该意图的目标是做什么的?PendingIntent使用getService,目标类是服务的类。如果我终止应用程序任务,服务将按预期在后台启动和处理。如果应用程序任务是一个后台任务,那么它会被启动服务的意图带到前台。我可以稍后在电脑前发布代码。打得好。有时我称之为startActivity,这取决于另一个隐藏在代码中的变量。看到你的回答,我就想起来了!“有什么方法可以防止这种情况发生吗?”有时困惑不解:防止什么事情发生?如果您不想调用
startActivity()
,请不要调用
startActivity()
。我正在启动的活动本身调用finish,而不是我在屏幕上看到的活动。我看到的是应用程序发送到后台之前的最后一个活动窗口。我可以通过将调用的活动更改为服务来解决这个问题,这样就不会调用startActivity。