我有一个服务,当最上层的Activity发生变化时,其行为必须改变。举个例子,如果Activity A正在运行,那么服务会启动某种处理过程。当Activity A不再可见时(用户按下“Back”、“Home”或执行其他任何使Activity A不可见的操作),这个处理过程必须停止。这个Activity A不能意识到这个服务——也就是说,它不必要显式地通知服务它正在退出。
简而言之,是否有以下方式:
- 获取最上层Activity的任何标识(对象引用、类名、ID 等)
- 接收最上层Activity更改的通知?
P.S. 这可能听起来像恶意软件行为,但这是正当的使用情况!
编辑:这些活动不在我的应用程序中。它们可以是任何东西——浏览器、地图应用、设置等。
if(className.equals(your classname)){//do stuff}
。同时确保输入完整的类名,例如com.example.appname.class
。 - vergil corleone