This talk will cover how we implemented the data layer in the Now in Android app. Our design enabled us to build an offline first experience that is fast, efficient and reliable while being able to support a reactive programming style.

We’ll show how data is stored by the data layer (SQLite and DataStore), the unique advantages each storage type provides along with naming conventions, modeling and query concerns. We’ll also cover migrations and best practices for migrating data. Finally, we’ll discuss data synchronization and conflict resolution with remote data sources