Book description
Battle-Tested Strategies for Storing,
Managing, and Sharing Android Data
“Android™ Database Best
Practices goes well beyond API documentation to offer strategic
advice about how to handle data in an Android application and the
tools needed to develop productively. This arms the developer with
a trove of solutions to nearly any problem an application may face
involving data. Mastering the concepts in this book are therefore
essential for any developer who wants to create professional
Android applications.”
–Greg Milette, Android developer,
Gradison Technologies, Inc.
This is the first guide to focus on one of the most critical aspects of Android development: how to efficiently store, retrieve, manage, and share information from your app’s internal database. Through real-world code examples, which you can use in your own apps, you’ll learn how to take full advantage of SQLite and the database-related classes on Android.
A part of Addison-Wesley’s Android™ Deep Dive series for experienced Android developers, Android Database Best Practices draws on Adam Stroud’s extensive experience leading cutting-edge app projects.
Stroud reviews the core database theory and SQL techniques you need to efficiently build, manipulate, and read SQLite databases. He explores SQLite in detail, illuminates Android’s APIs for database interaction, and shares modern best practices for working with databases in the Android environment.
Through a complete case study, you’ll learn how to design your data access layer to simplify all facets of data management and avoid unwanted technical debt. You’ll also find detailed solutions for common challenges in building data-enabled Android apps, including issues associated with threading, remote data access, and showing data to users. Extensive, up-to-date sample code is available for download at github.com/android-database-best-practices/device-database.
You will
Discover how SQLite database differs from other relational databases
Use SQL DDL to add structure to a database, and use DML to manipulate data
Define and work with SQLite data types
Persist highly structured data for fast, efficient access
Master Android classes for create, read, update, and delete (CRUD) operations and database queries
Share data within or between apps via content providers
Master efficient UI strategies for displaying data, while accounting for threading issues
Use Android’s Intents API to pass data between activities when starting a new activity or service
Achieve two-way communication between apps and remote web APIs
Manage the complexities of app-to-server communication, and avoid common problems
Use Android’s new Data Binding API to write less code and improve performance
Table of contents
- About This eBook
- Title Page
- Copyright Page
- About the Android Deep Dive Series
- Dedication Page
- Contents in Brief
- Contents
- Preface
- Acknowledgments
- About the Author
- 1. Relational Databases
- 2. An Introduction to SQL
- 3. An Introduction to SQLite
- 4. SQLite in Android
- 5. Working with Databases in Android
- 6. Content Providers
- 7. Databases and the UI
- 8. Sharing Data with Intents
- 9. Communicating with Web APIs
- 10. Data Binding
- Index
- Code Snippets
Product information
- Title: Android™ Database Best Practices
- Author(s):
- Release date: July 2016
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780134438092
You might also like
article
Run Llama-2 Models Locally with llama.cpp
Llama is Meta’s answer to the growing demand for LLMs. Unlike its well-known technological relative, ChatGPT, …
book
Java APIs, Extensions and Libraries: With JavaFX, JDBC, jmod, jlink, Networking, and the Process API
This book completes the Apress Java learning journey and is a comprehensive approach to learning Java …
book
Android Studio 4.1 Development Essentials – Java Edition
Acquire the skills necessary to develop Android apps using the Android Studio integrated development environment and …
article
Use Github Copilot for Prompt Engineering
Using GitHub Copilot can feel like magic. The tool automatically fills out entire blocks of code--but …