코딩하는 일용직 노동자

launchWhenStarted, launchWhenCreated, launchWhenResumed 가 무엇인가? 본문

안드로이드

launchWhenStarted, launchWhenCreated, launchWhenResumed 가 무엇인가?

bacass 2024. 3. 25. 18:03
안드로이드 코루틴에서 launchWhenStarted, launchWhenCreated, launchWhenResumed는 액티비티 또는 프래그먼트의 라이프 사이클에 따라 코루틴을 실행하는 함수입니다.

각 함수의 작동 방식:
launchWhenStarted: 액티비티 또는 프래그먼트가 시작되면 코루틴을 실행합니다. 액티비티 또는 프래그먼트가 일시 중지되거나 중지된 후 다시 시작되면 코루틴은 다시 시작되지 않습니다.
launchWhenCreated: 액티비티 또는 프래그먼트가 생성되면 코루틴을 실행합니다. 액티비티 또는 프래그먼트가 일시 중지되거나 중지된 후 다시 시작되면 코루틴은 다시 시작되지 않습니다.
launchWhenResumed: 액티비티 또는 프래그먼트가 다시 시작될 때 코루틴을 실행합니다. 액티비티 또는 프래그먼트가 일시 중지된 후 다시 시작되면 코루틴은 다시 시작됩니다.

사용 시기:
launchWhenStarted: 액티비티 또는 프래그먼트가 시작될 때 한 번만 실행해야 하는 작업에 사용합니다.
launchWhenCreated: 액티비티 또는 프래그먼트가 생성될 때 초기화해야 하는 데이터에 사용합니다.
launchWhenResumed: 액티비티 또는 프래그먼트가 다시 시작될 때마다 실행해야 하는 작업에 사용합니다.
// 액티비티 또는 프래그먼트가 시작될 때 데이터를 로드
launchWhenStarted {
  // 데이터 로드
  // ...
}

// 액티비티 또는 프래그먼트가 생성될 때 설정을 초기화
launchWhenCreated {
  // 설정 초기화
  // ...
}

// 액티비티 또는 프래그먼트가 다시 시작될 때 UI를 업데이트
launchWhenResumed {
  // UI 업데이트
  // ...
}