アプリケーションに GCM を実装しました。サーバーから受信したペイロードに従って、Activity(B) というアクティビティを開始しています。
私の要件は、アプリケーションの使用中にサーバーからその特定のペイロードを受信し、アクティビティ (A) にいると仮定すると、その時点で (A) が閉じ、アクティビティ (B) のみがそのアプリケーションのインスタンスにある必要があります。アクティビティ B が GCM の GCMIntentService クラスから開始されるとすぐに閉じる必要があります。
私が試したことはうまくいきませんでした。
Intent myIntent=new Intent(myContext,ActivityB.class);
myIntent.setFlag(Intent.FLAG_ACTIVITY_CLEAR_TOP);
myContext.startActivity(myIntent);
フラグも試してみた
Intent.FLAG_ACTIVITY_NEW_TASK
すべての組み合わせで。
マニフェストファイルでlaunchModeなどの特別なパラメーターを使用していないアクティビティを宣言しているときに、マニフェストのどこかで間違っている可能性があるかどうか教えてください。