2015年7月7日火曜日

[Android] アクティビティの多重起動を防ぐ

Serviceを使ってマルチスレッドからActivityを呼び出す(startActivity())ことをやっていると、Activityが多重起動してしまいErrorが生じてしまうケースがあります。(スレッドセーフに作られているActivityならいいのですけどね)。

このケースの解決方法として、アクティビティの多重起動を防ぐという方法があります。やり方は簡単で、AndroidManifestで多重起動を防ぎたいアクティビティのactivityタグでandroid:launchMode="singleInstance"を指定するだけです。
記述例は次の通り。

参考:
 プログラムの多重起動と連続起動について - fの備忘録

2 件のコメント:

  1. 助かりましたー!ありがとうございます!

    返信削除
    返信
    1. 小川さま

      お役に立てたようで何よりです^^

      削除