2

私の Android アプリケーションは多くのアクティビティで構成されており、それぞれがメニューを表しています。

  • アクティビティ A (メインのアクティビティと第 1 レベルのメニュー)
  • アクティビティ B (第 2 レベルのメニュー)
  • アクティビティ C (3 番目と最後のメニュー)

サービスでのユーザーのアクションを監視しています。(サービスによって検出された) イベントが発生したら、すべてのアクティビティを閉じて、アクティビティ A を再起動します。以下に記述したコードは、サービスではなくアクティビティでのみ機能します。

Intent myIntent = new Intent();
myIntent.setClassName("main.activity", "ActivityA");
myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|
                  Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(myIntent);

サービスでこれを行うにはどうすればよいですか?

4

1 に答える 1

3

これはどうですか:

Intent myIntent = new Intent();
myIntent.setClassName("main.activity", "ActivityA");
myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|
              Intent.FLAG_ACTIVITY_SINGLE_TOP|
              Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(myIntent);
于 2012-10-12T19:51:05.987 に答える