java - 通过接收通知重新创建 Activity

标签 java android

有以下任务:

有第一个 Activity (例如“Activity A”)和第二个 Activity (“Activity B”)。还有一些服务(只是“服务”)用于从我的服务器捕获通知。我想实现以下算法:

  1. 用户正在进行“Activity A”或“Activity B”
  2. “服务”从我的服务器捕获一些通知
  3. 如果用户正在进行“Activity A”,那么服务应该在通知栏上创建通知;如果用户已经在“Activity B”上,该服务应该只重新创建“Activity B”而不创建通知。
  4. 如果通知已创建,用户可以点击它并转到“Activity B”

我已经完成了没有第三步的所有步骤,因为我不知道如何获得当前 Activity 。请告诉我,有什么方法可以检测当前的 Activity 吗?谢谢。

最佳答案

没有“合法”的方式来获取用户正在进行的 Activity

你总是可以做一个黑客:

  • 在您的 ActivityB 类中声明一个 static boolean sVisible 成员
  • onStart() 中,将该标志设置为 true
  • onStop() 中,将该标志设置为 false
  • 在您的服务中检查if(ActivityB.sVisible)

关于java - 通过接收通知重新创建 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18673544/

相关文章:

java - Android - 按钮生成 float 上下文菜单

android - 从 G-Shock watch 蓝牙 android 获取 UUID

android - 升级到新版本 1.9.5 后,Universal Image Loader 无法正常工作

用于管理文件上传到服务器的 Java Applet

Hibernate 和三个表发生 java.lang.StackOverflowError

java - 使用确定的比较器呈指数增加的循环的运行时间是多少?

java - 如何获得正常的 Google map 蓝色当前位置标记?

java - java中的网络通信加密

java - 最大堆大小无效 : -Xmx512m

android - 如何在 Android Oreo 中使用 PackageManager canRequestPackageInstalls?