Hey developers! π
I wanted to share an open-source Android library I created called Backpack. It provides a secure, drop-in cloud backup solution for Room databases directly to a user's Google Drive.
The Problem
Implementing cloud backups for SQLite/Room databases on Android is surprisingly complex. You have to:
- Safely handle SQLite WAL/SHM file locking and checkpointing.
- Configure Google Identity Services and handle OAuth tokens.
- Manage secure, encrypted file transfers so backups aren't vulnerable.
Backpack handles all of this complexity for you with minimal setup.
Features
- π AES-256 Encryption: Automatically encrypts database files before uploading.
- π Google Drive App Folder: Stores backups in an isolated, hidden app folder so users cannot accidentally modify or delete them.
- β‘ Kotlin Coroutines & Flow: Built fully asynchronous for modern Android projects.
- π¨ Pre-built UI: Includes a customizable
BackupViewcomponent for easy onboarding and sign-in. - π Production Proven: Already used in production by apps like AutoSend on Google Play.
Quick Start
Add the dependency to your app's build.gradle file:
dependencies {
implementation("com.github.vedraj360:Backpack:1.0.3")
}
π Links & Resources
To see the full setup guide, view code examples, or star the project:
- GitHub Repository: https://github.com/vedraj360/Backpack
- Medium Setup Guide: https://vedraj360.medium.com/integrating-google-drive-for-android-cloud-backups-a-complete-setup-guide-6cd8611f1905
I'd love to hear your thoughts, feedback, or any feature suggestions in the comments below! If you find it useful for your project, please leave a star βοΈ on GitHub!
Top comments (0)