我需要在我的应用程序运行时在状态栏中放置一个通知,但我不希望它在选择时回调我的活动。它只是向用户提供应用程序正在运行的信息 - 基本上是在他们按下主页按钮并将其最小化的情况下提醒。
想法?
我需要在我的应用程序运行时在状态栏中放置一个通知,但我不希望它在选择时回调我的活动。它只是向用户提供应用程序正在运行的信息 - 基本上是在他们按下主页按钮并将其最小化的情况下提醒。
想法?
Intent intent = new Intent(this, YourActivity.class);
要不就
意图意图 = new Intent();
我有同样的期望行为。我的解决方案是:
Intent intent = new Intent(this, YourActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
mPendingIntent = PendingIntent.getActivity(getApplicationContext(), 0, intent, 0);
此外,使通知在用户选择时自动消失
notification.flags |= Notification.FLAG_AUTO_CANCEL;
我最终想出了一个解决这个问题的方法,尽管它基本上是一个 hack。我没有将意图设置为指向 Activity 类,而是使用 Dialog 类。
this.notificationIntent = new Intent(this, SomeDialog.class);
现在,如果用户通过 logcat 选择通知,我可以看到记录了启动活动,但似乎没有任何反应。
这使我可以发布在我的应用程序运行时保留的通知,然后在用户退出时将其关闭。