Ich möchte eine Benachrichtigung in der aktuellen Activity
starten, die ChatActivity
ist. Wenn ich die Benachrichtigung drücke, möchte ich die ChatOneActivity
eingeben.Vermeiden Sie das Beenden der aktuellen Aktivität, wenn eine Benachrichtigung gesendet wird
Allerdings möchte ich nicht die aktuelle ChatActivity
beendet, wenn ich in der ChatOneActivity
bin. Weil ich die Daten empfange und wenn ich den Zurück-Knopf drücke, möchte ich im ChatActivity
bleiben.
Der Punkt ist, ich will nicht die ChatActivity
, beenden, egal welche Activity
Ich bin zur Zeit in.
Also, was soll ich tun?
Hier ist der Code
private void showNotification(String id, String message) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(getApplicationContext())
.setSmallIcon(android.R.drawable.sym_action_email)
.setContentTitle("You have a new message")
.setContentText(message);
Intent intent = new Intent(ChatActivity.this,ChatOneActivity.class);
intent.putExtra("toId", id);
TaskStackBuilder stackBuilder = TaskStackBuilder.create(ChatActivity.this);
stackBuilder.addParentStack(ChatOneActivity.class);
stackBuilder.addNextIntent(intent);
PendingIntent pendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_CANCEL_CURRENT);
builder.setContentIntent(pendingIntent);
NotificationManager mNotificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(1, builder.build());
}
Das Problem ist:
Jetzt gebe ich den ChatOneActivity
und wenn ich die Zurück-Taste drücken, kehre ich auf den Desktop. Bedeutet das die ChatActivity
schon fertig ist was ich nicht will.
Hier ist das Mainfest
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.webmobilegroupchat"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="16" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.webmobilegroupchat.MainActivity"
android:label="@string/app_name" >
</activity>
<activity
android:name="com.example.webmobilegroupchat.ChatActivity"
android:label="@string/title_activity_chat" >
</activity>
<activity
android:name="com.example.webmobilegroupchat.ChatOneActivity"
android:label="@string/title_activity_chat_one" >
</activity>
<activity
android:name="com.example.webmobilegroupchat.SplashActivity"
android:label="@string/title_activity_splash" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Betrachten wir ein 'Service' mit für diese Art von lang laufenden Aufgaben. – Shaishav
Ich denke, es ist etwas falsch mit TaskStackBuilder. –
Können Sie bitte die Manifest-Deklaration für diese 'Aktivität' anzeigen –