티스토리 뷰

반응형

01. 액티비티와 인텐트의 기본

안드로이드의 4대 컴포넌트

1) 액티비티

화면을 구성하는 가장 기본적인 컴포넌트이다.

안드로이드에서 실행단위이다.

 

2) 서비스

눈에 보이는 화면(액티비티)과 상관없이 백그라운드에서 동작하는 컴포넌트이다.

 

3) 브로드캐스트 리시버

안드로이드는 여러 응용 프로그램이나 장치에 메시지를 전달하기 위해 방송 메시지를 사용한다.

 

4) 콘텐츠 프로바이더

응용 프로그램 사이에 데이터를 공유하기 위한 컴포넌트이다.

 

하나의 액티비티에서 다른 액티비티를 실행하려면 액티비티의 실행에 필요한 정보를 보내주어야 한다.

이때 사용하는 메시지를 인텐트라고 한다. 즉 안드로이드 4대 컴포넌트가 서로 데이터를 주고받기 위한 메시지 객체이다.

더보기

액티비티를 매니페스트 파일에 등록하는 코드

AndroidManinifes.xml

activity android:name =".MyActivity"

명시적 인텐트

다른 액티비티의 이름을 명확히 지정할 때 사용하는 방법이다. 타겟 컴포넌트의 이름을 지정하는 방법이다.

명시적 인텐트에서 데이터를 전달할 때, 메인 액티비티에서 putExtra() 메서드로 인텐트에 데이터를 넣고 

StartActivity()로 인텐트를 다른 액티비티에 넘긴다. 그리고 인텐트를 받은 액티비티에서는 getStringExtra(), getInExtra(),

getBooleanExtra() 등의 메서드로 넘어온 데이터에 접근할 수 있다.

 

 

 

02. 액티비티와 인텐트의 응용

데이터를 반환하기 위해 액티비티를 호출할 때,  서브 액티비티를 시작하고 결과를 받을 때 사용되는 메서드는 startActivityForResult() 메서드이다.

암시적인 인텐트를 사용하여 웹페이지를 나타내게 하려면 사용되는 액션은 ACTION_VIEW

문자 메시지를 보내기 위한 암시적 인텐트 생성과 관련이 있는 코드는 Intent(Intent.ACTION_SENDTO)

 

 

액티비티 생명주기는 액티비티의 생성부터 소멸까지의 주기를 말한다.

onCreate(), onStrart(), onResume() 메서드가 수행되고 메인 액티비티 화면이 나온다.

이 상태에서 메인 액티비티를 끝내면 왼쪽의  onPause(), onStop(), onDestroy() 메서드가 차례로 수행되고 응용 프로그램이 종료된다.

만약 다른 액티비티를 요청하면 오른쪽의 onPause(), onStop() 메서드가 수행되고 메인 액티비티가 중지되며 다른 액티비티 화면이 나온다. 또 다른 액티비티의 사용을 종료하면 onRestart, onStart(), onResume() 메서드가 수행되고 다시 메인 액티비티 화면이 나온다.

  • onCreate(Bundle savedInstanceState):
    • 액티비티가 처음 생성될 때 호출된다.
    • 이 메서드에서는 초기화 작업(예: 레이아웃 설정, 데이터 바인딩 등)을 수행한다.
  • onStart():
    • 액티비티가 사용자에게 표시되기 바로 전에 호출된다.
    • 액티비티는 아직 상호작용 가능한 상태는 아니지만, 사용자에게 보이기 시작할 준비가 된 상태다.
  • onResume():
    • 액티비티가 사용자와 상호작용하기 바로 직전에 호출된다.
    • 이 시점에서 액티비티는 포커스를 받고, 사용자 입력을 받을 수 있다.
  • onPause():
    • 액티비티가 포커스를 잃거나 사용자와의 상호작용이 중지될 때 호출된다.
    • 예를 들어, 다른 액티비티가 포커스를 받을 때 호출된다.
  • onStop():
    • 액티비티가 더 이상 사용자에게 보이지 않을 때 호출된다.
    • 이 시점에서 대부분의 UI 관련 리소스를 해제해야 한다.
  • onDestroy():
    • 액티비티가 소멸될 때 호출된다.
    • 이 단계에서는 모든 리소스를 해제하고, 액티비티가 종료되기 직전의 정리 작업을 수행한다.

 

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함