안녕하세요
안드로이드 공부하고 있는 학생인데요
제가
공부하려고 어플을 만드는데요
첫번째, 액티비티가 비밀번호 입력 액티비티
두번째, 갤러리 선택
세번째, 갤러리
이런식으로 어플을 만들었는데요
일단 두번째 갤러리에서 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"로 설정하고 실행해도 마찬가지더라구요..
제가 원하는것은 어플을 다시 실행했을때 바로 첫번째 액티비티(비밀번호 입력)가 실행되게 하는것입니다.
또 두번째 액티비티에서 종료시켰을때 어플리케이션의 프로세서가 완전히 종료 되게 만들고 싶은데요..
지금 이런현상이 나타나는게 어플이 완전히 종료가 안되어서 그런건지 초보라서 잘모르겠습니다.
고수님들의 좋은 답변 기다리겠습니다. 감사합니다
네 답변주셔서 감사합니다.
지금 제가 비밀번호 인증후 메인액티비티로 넘어가게한 상태입니다.
그래서 비밀번호 액티비티를 매니페스트에서 메인값으로 설정해주었고,
그상태에서 앱을 실행했다가 종료하면 특정부분에서 다른 액티비티가 먼저 실행되는 현상이 나타나고 있습니다.
제 예상으로는 프로세서가 완전히 종료되지 않아서 그런것 같은데요 그 근거로는 앱실행우 바로 실행하면 이런 현상이 나타나지만
태스크킬러 프로그램으로 메모리를 모두 죽인후 다시 실행하면 메인 액티비티가 나타납니다. 휴... 여기서 어떻게 처리해야 될지 모르겠습니다.... ㅜㅜ 조언 감사히 듣겠습니다




manifest.xml 에서 먼저 실행할 액티비티를 지정하세요