data source;Works out of the box with room and recyclerview -Supports large and infinite length lists -Saves the user's battery and consumes less bandwidth. Because it only requests data that are needed, this saves some device resources. -Loaded data is shown automatically with LiveData -Supports RXJava
of paging -used on server side apps -Your client sends a request, and when the response comes from the server, it includes the data. It also includes pointers for the next and previous keys. 13
and can provide update signal, for example, to the RecyclerViewAdapter. -The data is loaded automatically from a DataSource on the background thread.But then, it’s consumed on the main thread. -It supports both an infinite scrolling list, but also countable lists. 14
of RecyclerView.Adapter that presents data from a PagedList. For example, when a new page is loaded, the PagedListAdapter signals the RecyclerView that the data has arrived; this lets the RecyclerView replace any placeholders with the actual items, performing the appropriate animation. -uses a background thread to compute changes from one PagedList to the next 15
the DataSource in the background thread.The DataSource invalidates the PagedListand +updates its value. Then on the main thread, the PagedList notifies its observers of the new value.Now the PagedListAdapter knows about the new value. The background thread, the PageListAdapter needs to compute what’s changed, whats’ the difference and back on the UI thread, the View is updated in the onBinderViewHolder. 17