Android 检查后台服务是否恢复了任何活动?
我看到过类似的问题,他们想知道他们是否可以找到某个特定的活动是否正在从服务运行。这不是我想做的。我想知道用户当前是否正在使用我的应用程序上的任何活动 我的用例是我有一个监控Android 检查后台服务是否恢复了任何活动?,android,Android,我看到过类似的问题,他们想知道他们是否可以找到某个特定的活动是否正在从服务运行。这不是我想做的。我想知道用户当前是否正在使用我的应用程序上的任何活动 我的用例是我有一个监控服务,它监控许多与会话相关的事情,比如套接字连接。如果套接字连接在任何一点出现故障,则监控服务将被告知,并且必须让用户知道。但是,我只想让用户知道他是否正在使用我的应用程序。如果他按下home(主页)按钮去别的地方查东西,我不想让他知道。如果他正在使用我的应用程序,我会向他显示一个对话框 我的问题是,我需要能够检查当前是否有任
服务
,它监控许多与会话相关的事情,比如套接字
连接。如果套接字
连接在任何一点出现故障,则监控服务
将被告知,并且必须让用户知道。但是,我只想让用户知道他是否正在使用我的应用程序。如果他按下home(主页)按钮去别的地方查东西,我不想让他知道。如果他正在使用我的应用程序,我会向他显示一个对话框
我的问题是,我需要能够检查当前是否有任何活动
正在恢复。如果是这样,那么我将向用户显示一个对话框
我见过很多在我看来相当糟糕的解决方案。我不想持有一个由活动不断更新的布尔值
,以了解活动是否正在运行。我希望能够清楚地知道是否有恢复的活动,并显示一个对话框,如果是这样的话。请记住,我处于服务
,因此我没有上下文。您可以在AndroidX生命周期库中使用,并检查当前生命周期状态是否至少为已启动
(用户可见)或已恢复
(最前端),具体取决于您的偏好。它的生命周期是应用程序中所有活动
生命周期的组合,因此这将检查是否有任何活动
处于该状态
此外:
请记住,我在一个服务中
,因此我没有上下文
服务
扩展了上下文
,因此您可以将服务
用作上下文
,就像在活动中一样
哇,这非常有效!到目前为止,这是解决这个问题的最好办法。