私は通知を呼び出すプログラムを持っています。通知をプルダウンすると、新しいアクティビティが起動します。Android Refresh通知からのアクティビティ
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の両方を試しましたが、どちらも古いセカンダリアクティビティをクリアして新しいものを作成していないようです。どのように私はそれを行うかもしれないかについての任意のアイデア?
私の誤解は間違いますが、履歴なしで新しいアクティビティを開始したい場合や、古いアクティビティをフォアグラウンドにして状態を更新したい場合は、 – mdelolmo
通知を押すと、古いアクティビティがフォアグラウンドに来るようにしたいが、新しいインテントで更新する。 – Lark
私の問題も手伝ってもらえますか? http://stackoverflow.com/questions/20149685/android-notification-refresh-activity –