私はちょうどコードを見ました:
public class MyApplication extends Application {
private List<Activity> activityList = new LinkedList<Activity>();
private static MyApplication instance;
private MyApplication() {
}
public static MyApplication getInstance() {
if (null == instance) {
instance = new MyApplication();
}
return instance;
}
public void addActivity(Activity activity) {
activityList.add(activity);
}
public void exit() {
for (Activity activity : activityList) {
activity.finish();
}
System.exit(0);
}
}
現在の活動以外の活動をコントロールできるとは思いもしませんでした。私は通常、独自のアクティビティ内で finish() を呼び出しますが、このコードを見て、他のアクティビティも終了できることに気付きました。
Android スタックはバックスタック アーキテクチャなので、途中でアクティビティを破棄するとどうなりますか? たとえば、バック スタックに 5 つのアクティビティがあり、3 番目のアクティビティを終了するとします。2 番目と 4 番目のアクティビティはリンクされますか?