안녕하세요


안드로이드 공부하고 있는 학생인데요


제가 

공부하려고 어플을 만드는데요


첫번째, 액티비티가 비밀번호 입력 액티비티

두번째, 갤러리 선택  

세번째, 갤러리


이런식으로 어플을 만들었는데요


일단 두번째 갤러리에서 back버튼을 누르면 

@Override

    public boolean onKeyDown(int keyCode, KeyEvent event){

    switch(keyCode){

    

    case KeyEvent.KEYCODE_BACK:

    String alertTitle = "종료";


    new AlertDialog.Builder(Secound.this)

    .setTitle(alertTitle)

    .setMessage("SHY gallery를(을) 완전히 종료합니다.\n종료 하시겠습니까?")

    .setPositiveButton("예", new DialogInterface.OnClickListener() {


    @Override

    public void onClick(DialogInterface dialog, int which) {

    moveTaskToBack(true);

    finish();

    // 메모리 상태에서 완전한 종료를 취한다.

    ActivityManager am = (ActivityManager)getSystemService(ACTIVITY_SERVICE);

    am.restartPackage(getPackageName());

    }

    })

    .setNegativeButton("아니오", null)

    .show();

    }

    return true;

    }

을이용하여 프로세서가 종료되게 만들었습니다.


그런데 이렇게 종료하고 다시 어플을 실행하면 비밀번호를 묻는 첫번째 액티비티가 아닌 다른 액티비티가 먼저 실행되서...


왜그런가 싶어서 찾아 보았더니 매니페스트에서 액티비티엘리멘트에 런치모드를 설정하면 된다고 하더라구요 그래서 런치모드를


"singleTask"로 설정하고 실행해도 마찬가지더라구요.. 


제가 원하는것은 어플을 다시 실행했을때 바로 첫번째 액티비티(비밀번호 입력)가 실행되게 하는것입니다.


또 두번째 액티비티에서 종료시켰을때 어플리케이션의 프로세서가 완전히 종료 되게 만들고 싶은데요..


지금 이런현상이 나타나는게 어플이 완전히 종료가 안되어서 그런건지 초보라서 잘모르겠습니다.


고수님들의 좋은 답변 기다리겠습니다. 감사합니다