首页 文章

在显示推送通知之前检查活动是否已打开

提问于
浏览
1

您好我已经成功地在我的应用程序中实现推送通知但是我有一个小问题我想修复 . 我有一个 NotificationsActivity ,显示应用程序收到的所有通知的列表 .

现在,如果此活动已打开,则我无需在顶部显示推送通知 . 因此,我想在执行推送通知之前检查此活动是否已打开 .

这可能吗?如果是,怎么办呢?

1 回答

  • 1

    是的,这是可能的 . 您必须使用ActivityManager .

    private boolean isActivityForeground( Class activityClass ) {
    
        ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
        List<ActivityManager.AppTask> tasks = activityManager.getAppTasks();
    
        return activityClass.getName().equals( tasks.get(0).getTaskInfo().topActivity.getClassName() );
    }
    

相关问题