First they are going over SQLite, and how to write your own helpers and whatnot, and then how to use the resulting SQL queries in a RecyclerView.
Many apps I’ve worked on consider offline data retention to be of tertiary concern, so I’m looking forward to learning more from this to make sure that my apps always have excellent persistence.
When all the storage lessons are over, I’m going to implement the Realm.io database in an app and evaluate the difference. It seems quite attractive right now, but first I need to go through the lessons ahead of me before I can make a more informed trade-off.
Creating your own Content Providers
There is also a section about creating your own content provider. Both for internal and external usage. Quite useful, but little info on proper Database/Retention practices between server and client. Luckily, they do advise you to use an asynchronous Loader to do queries, and to send updated info back to the calling activity, which implies a lot of best practices about keeping the UI updated while doing back-end data manipulation.
They also show you how to use UriMatcher, which seems useful in a lot of contexts, including Deep Linking and Content Providers.
RecyclerView Changes Animated
Interesting aside, I never used ItemTouchHelper before. It makes it really easy to swipe away (delete) or move objects in a RecyclerView. I also discovered DiffUtil, which is good for animating changes in arrays in RecyclerViews, but requires a bit of tweaking if the content inside of an object changes.