A high-performance, native Android cloud storage client built specifically for S3-compatible buckets like Backblaze B2.
DriveBack allows you to connect directly to your private buckets to view, stream, and manage your files on the go without relying on third-party middleware.
- Direct S3 Authentication: Connect seamlessly using your Bucket Name, Region, Key ID, and Application Key.
- High-Speed Parallel Uploads: Select multiple large files at once. Uploads run concurrently in the background.
- Smart Bandwidth Saver: Automatically generates and uploads hidden
.thumb_files for images and videos, saving massive amounts of data when scrolling through your drive. - Native Video Streaming: Integrated with Media3 (ExoPlayer) to securely stream private video files directly from the cloud using short-lived Presigned URLs.
- Dynamic UI: Built entirely in Jetpack Compose. Switch instantly between List View, 4-Column Grid, and 6-Column Grid.
- Custom Themes: Dynamic theme switching (Gray/Blue/Red vs. Light/Blue/Red) that updates instantly without restarting the app.
- UI: Jetpack Compose, Material 3
- Language: Kotlin
- Cloud Integration: AWS SDK for Kotlin (S3)
- Media Loading: Coil (AsyncImage)
- Video Player: AndroidX Media3 (ExoPlayer)
- Concurrency: Kotlin Coroutines & Flow
- Clone this repository.
- Open the project in Android Studio.
- Sync Gradle dependencies.
- Run on an emulator or physical device (Android 7.0 / API 24+ required).
- Enter your Backblaze B2 Application Keys on the launch screen to connect. (Note: Ensure your Backblaze App Key has both Read and Write permissions to upload files and create folders).