반응형 2023년 이전/Android39 Android - WorkManager (2) WorkRequest 이전 글을 보고 오시면 더 좋습니다.( 2019/10/16 - [프로그래밍/Android] - Android - WorkManager(1) ) 출처- Android developer WorkReqeust 정의 이전 글에서 WorkManager를 수행하기 위해서는 WorkRequest가 필요했습니다. 그럼 WorkReqeust에 대해 자세히 알아보도록 하겠습니다. Work constraints 작업에 제약 조건을 추가하여 언제 실행할 수 있는지 표시 할 수 있습니다. 예를 들어, 장치가 idle 상태이고 전원에 연결된 경우에만 작업을 실행하도록 지정할 수 있습니다. Code로는 다음과 같습니다. (저번 글에서 만들었던 Project의 MainFragment에 작성하였습니다.) class MainFragme.. 2019. 10. 16. Android - WorkManager(1) 출처 - Android Developer WorkManager 페이지 Android Oreo 부터 긴 작업의 백그라운드 서비스와 브로드캐스트가 제한이 되었습니다. (자세한 사항은 여기서 확인해 주세요) 그래서 Android Oreo 이후 백그라운드 서비스 또는 브로드캐스트를 사용하기 위해서는 WorkManager를 사용하게 되었습니다. 즉 WorkManager는 즉시 실행하지 않아도되며, 앱이 종료되거나 장치가 다시 시작 되더라도 안정적으로 실행해야하는 작업을위한 것입니다. 예를 들어 이미지를 서버에 업로드 해야 하거나, 데이터를 분석하고 이를 데이터베이스에 저장해야 하는 작업에는 WorkManager 를 사용하는것이 좋습니다. 그러나 사용자가 현재 보고있는 UI 를 빠르게 변경해야 하는 작업이나 물건 .. 2019. 10. 16. Android -LiveData Android Developer에서 설명하는 LiveData란 관찰기능한(Observable) 데이터 홀더 클래스입니다. 간단히 설명하면 Activity나 Fragment, service의 life cycle을 따르는데, LiveData는 현재 활성화된 생명주기에 있는 앱 컴포넌트 옵저버만 업데이트하도록 보장합니다. 즉, life cycle이 STARTED이거나 RESUMED 일 때, 옵저버가 활성상태 인것으로 간주, 이 활성화 중인 옵저버들에게만 LiveData 업데이트에 대한 알림을 줍니다. (비활성화 상태 STARTED이거나 RESUMED가 아닌 상태는 알림을 받지 않습니다.) 그리고 DESTROYED일 때는 옵저버가 삭제 될 수 있도록 할 수 있기 때문에 메모리 릭에 대한 우려도 없습니다. 이런 .. 2019. 10. 15. Android - ViewModel ViewModel이란 액티비티와 프래그먼트에서 사용되는 UI관련 데이터를 보관하고, 관리하기 위해 디자인 되었습니다. 왜 UI 데이터를 보관하고 관리하기 위해 디자인 되었냐면, ViewModel이 있기전에는 UI컨트롤러의 라이플 사이클에 따라 그 안에 저장해 두었던 UI 관련 임시 데이터들이 모두 사라집니다. 그리고 액티비티가 종료되기 직전에 호출되는 onSaveInstanceState() 콜백에서 액티비티의 상태 또는 데이터를 저장할 수 있지만 직렬화할 수 없는 객체는 저장할 수 없습니다. 거기다 많은 양의 데이터를 저장할 수도 없었습니다. 그래서 나온 디자인이 ViewModel 디자인입니다. 그럼 사라지는 가장 대표적인 경우는 가로/세로(PORTRAIT->LANDSCAPE, LANDSCAPE->POR.. 2019. 10. 15. 이전 1 ··· 6 7 8 9 10 다음 반응형