我如何知道要显示或不显示通知的Android应用程序的应用程序状态?

吉恩·科拉尔

我正在开发一个使用Google Cloud Messaging的即时消息应用程序当用户收到联系人的消息时,我会发送通知一切正常。我设置了GCMBroadcastReceiverGCMMessageHandler问题是:即使用户当前正在与他的联系人聊天,通知也始终显示。我如何知道GCMMessageHandler中的应用程序状态以不显示通知?

这是GCMBroadcastReceiver:

public class GcmBroadcastReceiver extends WakefulBroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

    // Explicitly specify that GcmMessageHandler will handle the intent.
    ComponentName comp = new ComponentName(context.getPackageName(),
            GcmMessageHandler.class.getName());

    // Start the service, keeping the device awake while it is launching.
    startWakefulService(context, (intent.setComponent(comp)));
    setResultCode(Activity.RESULT_OK);
}

}

这是GCMMessageHandler:

protected void onHandleIntent(Intent intent) {
    Bundle extras = intent.getExtras();

    GoogleCloudMessaging gcm = GoogleCloudMessaging.getInstance(this);
    String messageType = gcm.getMessageType(intent);

    mes = extras.getString("message");

    if(IM_NOT_IN_THE_CHAT_ACTIVITY)
    {
        showNotification(mes);
    }

我正在努力获得的是该标志:IM_NOT_IN_THE_CHAT_ACTIVITY。

我如何在IntentService中知道这一点?

吉恩·科拉尔

这样做可以达到我的目的:

    ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
    List< ActivityManager.RunningTaskInfo > taskInfo = am.getRunningTasks(1);
    String activity_name = taskInfo.get(0).topActivity.getClassName();


    if(activity_name != ACTIVITY_NAME)
        showNotification(mes);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

阅读我的应用程序的“显示通知”状态

来自分类Dev

Android获取应用程序“显示通知”状态

来自分类Dev

如何知道我的应用程序是否禁用了“显示通知”?

来自分类Dev

如何知道我的应用程序是否禁用了“显示通知”?

来自分类Dev

如何显示android通知和应用程序图标

来自分类Dev

不显示应用程序的通知操作按钮操作

来自分类Dev

Android通知:打开应用程序时不显示通知吗?

来自分类Dev

我如何知道我的应用程序是从Swift启动的状态

来自分类Dev

如何避免我的android应用程序显示在“最近的应用程序”列表中?

来自分类Dev

Google Analytics(分析)不显示对我的应用程序的跟踪

来自分类Dev

aLogCat不显示我的应用程序的日志

来自分类Dev

为什么我的应用程序不显示录制的消息?

来自分类Dev

Dash搜索不显示应用程序

来自分类Dev

Dash搜索不显示应用程序

来自分类Dev

照片应用程序不显示照片

来自分类Dev

Android开发中:关闭应用程序时不显示通知

来自分类Dev

在Google Play商店中更新我的应用程序时,如何保持我的应用程序通知显示?

来自分类Dev

Android应用程序不显示已解析的Jsoup信息

来自分类Dev

如何修复在应用程序运行时不显示通知的问题?

来自分类Dev

在 Xamarin iOS 上的前台应用程序时,如何不显示 Firebase 通知?

来自分类Dev

在Android的设备设置中不显示已安装应用程序中的应用程序

来自分类Dev

显示通知后崩溃的应用程序

来自分类Dev

显示来自CLI应用程序的通知

来自分类Dev

对于我在Safari中的Angular 2应用程序,我的应用程序不显示,仅显示蓝屏

来自分类Dev

如何显示显示在主屏幕和所有应用程序上的通知-Android

来自分类Dev

为什么我的Android应用程序在ActionBar中不显示图标和文本?

来自分类Dev

Logcat显示系统和其他应用程序的消息,但不显示我的应用程序?

来自分类Dev

我如何知道应用程序是否与 Android GO 兼容

来自分类Dev

Dash不显示应用程序,仅显示文件

Related 相关文章

  1. 1

    阅读我的应用程序的“显示通知”状态

  2. 2

    Android获取应用程序“显示通知”状态

  3. 3

    如何知道我的应用程序是否禁用了“显示通知”?

  4. 4

    如何知道我的应用程序是否禁用了“显示通知”?

  5. 5

    如何显示android通知和应用程序图标

  6. 6

    不显示应用程序的通知操作按钮操作

  7. 7

    Android通知:打开应用程序时不显示通知吗?

  8. 8

    我如何知道我的应用程序是从Swift启动的状态

  9. 9

    如何避免我的android应用程序显示在“最近的应用程序”列表中?

  10. 10

    Google Analytics(分析)不显示对我的应用程序的跟踪

  11. 11

    aLogCat不显示我的应用程序的日志

  12. 12

    为什么我的应用程序不显示录制的消息?

  13. 13

    Dash搜索不显示应用程序

  14. 14

    Dash搜索不显示应用程序

  15. 15

    照片应用程序不显示照片

  16. 16

    Android开发中:关闭应用程序时不显示通知

  17. 17

    在Google Play商店中更新我的应用程序时,如何保持我的应用程序通知显示?

  18. 18

    Android应用程序不显示已解析的Jsoup信息

  19. 19

    如何修复在应用程序运行时不显示通知的问题?

  20. 20

    在 Xamarin iOS 上的前台应用程序时,如何不显示 Firebase 通知?

  21. 21

    在Android的设备设置中不显示已安装应用程序中的应用程序

  22. 22

    显示通知后崩溃的应用程序

  23. 23

    显示来自CLI应用程序的通知

  24. 24

    对于我在Safari中的Angular 2应用程序,我的应用程序不显示,仅显示蓝屏

  25. 25

    如何显示显示在主屏幕和所有应用程序上的通知-Android

  26. 26

    为什么我的Android应用程序在ActionBar中不显示图标和文本?

  27. 27

    Logcat显示系统和其他应用程序的消息,但不显示我的应用程序?

  28. 28

    我如何知道应用程序是否与 Android GO 兼容

  29. 29

    Dash不显示应用程序,仅显示文件

热门标签

归档