Procházet zdrojové kódy

[공통][Bug] MainActivity 는 finish() 실행 시 앱 종료 처리

hyodong.min před 7 roky
rodič
revize
01332e3740

+ 9 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/command/FinishActivityCommand.java

@@ -5,8 +5,10 @@ package kr.co.zumo.app.lifeplus.view.command;
 
 import android.app.Activity;
 
+import kr.co.zumo.app.lifeplus.activity.MainActivity;
 import kr.co.zumo.app.lifeplus.model.Model;
 import kr.co.zumo.app.lifeplus.view.IView;
+import kr.co.zumo.app.lifeplus.view.presenter.CommandInvoker;
 import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
 
 /**
@@ -24,7 +26,13 @@ public class FinishActivityCommand extends Command<Model, IView, Presenter> {
   @Override
   public void execute(Model model, IView view, Presenter presenter) {
     Activity activity = view.getActivity();
-    activity.finish();
+    if (activity instanceof MainActivity) {
+      // main activity 라면 앱 종료 처리
+      new CommandInvoker().invoke(presenter, new ExitCommand());
+    }
+    else {
+      activity.finish();
+    }
   }
 
   @Override