Android 12 - 通知蹦床限制

Android 12 - Notification trampoline restrictions

由于 android 12,Notification trampoline restrictions 导致我的项目出现大问题。我开发了一个SDK,用于显示本地通知。 我的问题是我正在使用通知来显示横幅或在应用程序内打开 Web 视图。对于 Notification trampoline restrictions 我需要 使用 pending intent 指定通知点击事件。 我的问题是,从 SDK 端我找到了应用程序包 ID 并午餐了 MainActivity,每次我点击通知时应用程序都会重新启动 即使应用程序在后台或前台。

我需要了解以下内容

  1. 我如何知道应用程序何时在前台或后台处于活动状态
  2. 如果存在需要知道哪个activity在栈顶

您遇到过相同或相似的问题吗?你是怎么解决的? 任何帮助将不胜感激。谢谢!

我正在使用透明 activity 来处理这个问题。 所有与通知相关的工作都在透明 activity.

中处理
Intent intent = new Intent(mContext, NotificationActivity.class);
intent.putExtra("notification", parseInt(this.mActionDetail.getNotifyId()));
PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE);
builder.setContentIntent(pendingIntent);
builder.setAutoCancel(true);
notificationManager.notify(parseInt(this.mActionDetail.getNotifyId()), builder.build());

创建透明activityNotificationActivity.class