【发布时间】:2016-12-11 05:32:34
【问题描述】:
我有一个调用通知的程序。如果您将其拉下,通知将启动一个新活动。
mNotificationManager = (NotificationManager) getSystemService(ns);
int icon = R.drawable.stat_sys_secure_green;
CharSequence tickerText = "Browser Security Enabled";
long when = System.currentTimeMillis();
notification = new Notification(icon, tickerText, when);
Context context = getApplicationContext();
CharSequence contentTitle = "Browser Security";
CharSequence contentText = "Security Vulnerability Detected";
Intent notificationIntent = new Intent(this, PrivacyMessage.class);
//Test Extra
notificationIntent.putExtra("Primary Key", "Primary Text");
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
mNotificationManager.notify(HELLO_ID, notification);
问题出现在代码后面,当我想刷新辅助活动时。主要活动应该能够动态更改其中的附加内容。我尝试通过启动一个新意图来做到这一点。
CharSequence contentTitle = "Browser Security";
CharSequence contentText = "Test New Notification";
Intent intent = new Intent(this, PrivacyMessage.class);
notification.icon = R.drawable.stat_sys_secure_orange;
intent.putExtra("Test Thing", "Test Value");
//intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
//intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent cI = PendingIntent.getActivity(this, 0, intent, 0);
notification.setLatestEventInfo(getApplicationContext(), "New Title", "NewText", cI);
mNotificationManager.notify(HELLO_ID, notification);
现在,当我执行该代码时,会弹出新的通知标题,图标颜色会发生变化,下拉菜单会反映新的标题和添加信息。但是,当我单击它时,它不会以新的意图启动活动。相反,它只是用旧的附加功能提取旧的活动。我尝试了 FLAG_ACTIVITY_CLEAR_TOP 和 FLAG_ACTIVITY_NEW_TASK,但似乎都没有清除旧的辅助活动并创建新活动。知道我该怎么做吗?
【问题讨论】:
-
请原谅我的误会,但是您想启动一个没有历史记录的新活动,或者您希望旧活动处于前台并刷新其状态?
-
我希望旧的活动在按下通知时出现在前台,但要更新为新的意图。
-
您也能帮我解决一下我的问题吗? stackoverflow.com/questions/20149685/…
标签: android android-activity android-intent