* AsyncQueryHandler
> CP 에서 비동기적 CRUD 작업 처리를 전문으로 하는 유틸리티 클래스
> UI Thread 에서 CP 작업을 떠넘기는 데 사용
> Content Resorver, Background 실행, Thread 간 Msg 전달을 처리해준다
> App 내의 모든 AsyncQueryHandler 인스턴스 들은 같은 Msg Queue 를 통해 BG Thread 처리를 요청한다
* Content Provider
> App 내 or 다른 App 에서 데이터를 접근 허락하기 위해 사용
> 시간이 오래 걸릴 수 있기 때문에 보통 BG Thread 에서 실행되어야 하고 , 결과는 UI Thread 로 전달되어야 한다
* Content Resolver
> 다른 App 에 데이터를 요청하기 위해 사용
* Loader
> 콘텐츠가 변하거나 데이터 소스에 추가될 때 비동기적으로 데이터를 불러오고 App 으로 전달한다
> CursorLoader 를 통해 CP 와 연결할 수 있다
> LoaderManager
- Activity or Fragment 에 의해 사용되는 모든 로더를 관리하는 추상 클래스
> LoaderCallbacks
- LoaderManager ↔ Activity, Fragment 간 통신을 설정 및 해제하는 인터페이스
- 새로운 로더를 생성하고 LoadManager 로 반환한다
> AsyncTaskLoader
- 백그라운드 로딩을 처리하는 AsyncTask 를 포함하고, Background 실행을 위해 AsyncTask.executoOnExecutor() 을 사용한다
> CursorLoader
- AsyncTaskLoader 의 확장이다
- 데이터 변경을 감지하기 위해 Cursor 에 Content Observer 를 등록한다
'SW > Android' 카테고리의 다른 글
//View (0) | 2020.06.20 |
---|---|
//RecyclerView (0) | 2020.05.23 |
Asynchronization Task (0) | 2019.09.08 |
IPC (Inter Process Communication) (0) | 2019.09.07 |
Thread, Looper And Handler (0) | 2019.09.07 |