android - 从服务中获取有关当前显示 Activity 的信息

标签 android service android-activity

我有一项服务,希望根据当前 Activity 的 Activity 来表现不同的行为。

有什么方法可以识别设备上显示的 Activity 吗?

如果是这样并且如果我拥有当前 Activity :我的服务是否有任何方式与该 Activity 交互?我想要的是发送一个信号告诉它重绘 map 。

最佳答案

[已编辑]

请忽略我之前所说的 - 有更简单的方法:

1. 在包中创建一个新的 Java 类 Info.java

package com.your.package.name;
import android.app.Activity;

public class Info {
static Class<? extends Activity> active = null;
}


2.将此行添加到您拥有的每个 Activity 的 onResume() 方法中:

Info.active = this.getClass();


3. 将这些行添加到您拥有的每个 Activity 的 onStop() 方法中:

if(Info.active == this.getClass())
   Info.active = null;


4.现在为您服务:

if(Info.Active != null){
if (Info.active == MainActivity.class){
  // code that runs when MainActivity is active HERE

} else if (Info.active == SecondActivity.class){
  // code that runs when SecondActivity is active HERE

}
}

关于android - 从服务中获取有关当前显示 Activity 的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17632133/

相关文章:

android - 服务——为共享首选项声明静态字符串的最佳位置

java - 保留编辑框android代码中的值

Android - slider 设备导致 Activity 重置

android - 我应该在前端还是后端连接到 firebase?

java - Jar 未添加到类路径 - Android Studio

android - 拨号时启动我的应用程序

java - 我在向 Java 日历对象添加 14 天时遇到问题,一直给我 2012 年 2 月 31 日

linux - Prometheus 2.0 centos 服务无法启动,因为 "Opening storage failed", "permission denied"

c# - SharePoint - 如何使用列表 Web 服务插入新项目?

android - 如何在我的应用程序被卸载之前显示 Activity (Android)