본문 바로가기
Development/Android

[안드로이드] 자바-태스크(task) 관리 이해하기 : MainActivity 스스로 호출하기!

by 망치치 2020. 9. 1.
반응형

*Do-it 안드로이드 책을 보고 다시 공부하고 있어요! 책을 보고 공부 중인 안드로이드 개발 일지를 작성하기로 했습니다!

 

프로세스는 독립적인 상자와 같아서 다른 프로세스와 정보를 공유할 수 없어서, 하나의 프로세서를 실행 중인데, 이 위에 다른 프로세스 화면을 보여주기 위해서는 시스템의 도움이 필요합니다. 시스템에서 이런 엑티비티의 각종 정보를 저장하기 위해서 태스크(Task)를 만듭니다. 

 

만약 앱에서 전화 앱의 화면을 띄우지 않고 전화 앱을 따로 실행 시키면 전화 앱의 태스크는 여러분의 앱의 태스크와 별도로 만들어지게 됩니다. 보통 시스템이 알아서 태스크를 관리하지만, 직접 제어를 해야 하는 경우로 생깁니다. 이럴 때는 매니페스트 파일에 액티비티를 등록할 때 태스크도 함께 설정할 수 있어요 ! 

 

 

 

화면안에 나 자신 띄우기를 클릭하면 첫 화면이 반복해서 뜨게 됩니다. 중첩되어서 떠 있는 걸 확인 할 수 있게 됩니다.

 

Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);
}
});

 

xml에 버튼 만들어주시고, 버튼 이벤트를 만들어주시면 됩니다! 태스크는 앞에 서 설명한 것처럼 새로 드는 화면을 차례대로 스택에 넣어서 관리합니다 !