Android Architecture Components #4 - LiveData API LiveData는 새로 추가된 Android Architecture library에 추가된 기능입니다. 정의 및 기능LiveData는 Activity나 Fragment의 수명주기에 따라 Observable한 data holder 클래스 입니다. 따라서 어떤 데이터의 실시간 변화에 따른 UI 업데이트가 필요할 때 사용합니다. Observer pattern을 사용하여, UI component가 data가 변화를 요청하여 변경점이 있으면 업데이트 하는것이 아니라, Data driven 방식으로 data가 변경되면 UI에게 업데이트를 알려주도록 합니다. 호출 관계가 뒤집힌것이죠. 특이한 점은 observer를 등록할때 LifecycleOwner (Activity나 Fragment)와 함게 pair로 등록하여, .. 개발이야기/Android 7년 전
Android Architecture Components #3 - LiveData LiveData는 data holder 클래스로 data가 가진 값들을 확인할 수 있으며, 다른 observerable과 다르게 app component의 lfe cycle에 따라 observing 여부를 지정할 수 있습니다.LiveData는 LifeCycle이 STARTED나 RESUMED인 상태를 Observer가 active된 상태로 간주합니다. LiveData는 주어진 lifecycle에 의해서 관찰될수 있습니다.이는 Observer와 lifecycle이 pair로 등록되며, 등록된 Observer는 LifeCycleOwner의 상태가 active(STARTED or RESUMED)일때 wrapping된 data가 변경되면 noti를 받을 수 있습니다.observe(LifecycleOwner ow.. 개발이야기/Android 7년 전
Android Architecture Components #2 - Handling Lifecycles Android Architecutre component에서는 lifecycle을 다루기 위해서 새로운 방법을 제시합니다. Activity와 Fragment의 lifecycle에 따른 동작을 정의할 수 있는 class와 interface를 android.arch.lifecycle package를 제공합니다. 위치를 얻어오는 코드를 작성하는 예제를 통해서 어떻게 life cycle을 다루는지 알아보겠습니다. class MyLocationListener { public MyLocationListener(Context context, Callback callback) { // ... } void start() { // connect to system location service } void stop() { /.. 개발이야기/Android 7년 전
Android Architecture Components #1 Guide to App Architecture Android Libraries - Architecture Components 안드로이드 O OS와 함께 새로운 라이브러리가 추가되었습니다. Lifecycle을 handling 할수있는 방법LiveDataViewModelRoom Persistence Libraray위에 언급된것들을 묶어서 Architecture Components라고 합니다. 여기서는 위 네가지에 대한 대략적인 concept만 얘기합니다. (overview 정도라고 보시면 됩니다.) 원문은 아래 링크에 있으니 참고 바랍니다. https://developer.android.com/topic/libraries/architecture/guide.html ViewModelviewModel은 특정 activity나 fragment에 데이터를 제공.. 개발이야기/Android 7년 전