4

1/これがすでにアプリをフォアグラウンドで実行している場合、ユーザーに通知したくありません。通知を
作成する前に、アプリが前面にないかどうかを確認できますか?

2/アプリがバックグラウンドにある場合、最後の状態を前面に出すことは可能ですか?
Os が一部のアクティビティを破棄できることは知っていますが、新しいインテントを開始せずに、最後の状態を復元することは可能ですか?
新しいインテントを開始して押し戻すと、古いインテントが表示されるため、2 つの同一のインテントを起動するのはあまり美しくありません。

ありがとう

NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns);
Intent notificationIntent = new Intent(this, z_finish.class);

PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
Notification notification = new Notification(icon, tickerText, when);
notification.flags |= Notification.FLAG_AUTO_CANCEL;

notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
final int HELLO_ID = 1;
mNotificationManager.notify(HELLO_ID, notification); 
4

2 に答える 2

2

通知を作成する前に、アプリが前にないかどうかを確認することはできますか?

アクティビティは、いつ一時停止および再開されるかをサービスに通知する必要があります。その後、サービスは を表示するかどうかを決定できNotificationます。

アプリがバックグラウンドにある場合、最後の状態を前に出すことは可能ですか?

「最後の状態」が何であるかはよくわかりません。で試してみFLAG_ACTIVITY_CLEAR_TOPてくださいIntent

于 2010-08-06T09:32:40.410 に答える
0

アプリがシングルタスク モードの場合、アプリを再起動しても最後の状態が保存されます

于 2010-08-27T13:49:13.093 に答える