A file-sharing Android application that enables users to upload and share files through QR code scanning, built with Java and powered by Django REST API.
- Multi-File Upload: Upload single or multiple files simultaneously to the server
- QR Code Sharing: Generate QR codes for file sharing - receivers can download files by simply scanning
- User Authentication: Secure login and signup functionality
- Transfer History: Automatically saves and displays user's send and receive history
- Local Storage: Efficiently stores user information locally after authentication
- ⚡ Fast & Reliable: Quick file transfers with real-time progress tracking
- Frontend: Java (Android Native)
- Backend: Django REST Framework
- Database: MySQL
Before running this project, ensure you have:
- Android Studio (latest version recommended)
- JDK 8 or higher
- Python 3.8+
- MySQL Server
- Android device or emulator (API level 21+)
- Clone the repository:
git clone https://github.com/yourusername/file-share-android.git
cd file-share-android- Configure MySQL database in
dbconfig.py:
DATABASES = {
'default': {
'USER': 'root',
'PASSWORD': '1234',
'HOST': 'localhost',
'PORT': '3306',
'database'; 'file_share_app'
}
}- Start the Django server:
python -m uv run manage.py runserver 0.0.0.0:8000-
Open the
androidfolder in Android Studio -
Update the API base URL in the app configuration:
// In res/values/strings.xml file
<string name="server_url">your_server_ip:8000</string>-
Sync Gradle files and build the project
-
Run the app on your device or emulator
- Sign Up/Login: Create an account or log in to existing one
- Upload Files: Select single or multiple files from your device
- Generate QR Code: After upload, a unique QR code is generated
- Share: Show the QR code to the receiver
- Scan QR Code: Open the app and use the QR scanner
- Download Files: Files are automatically downloaded to your device
- View History: Check your receive history anytime
- Large files download may failed
If you found this project helpful, please give it a star!
For support, email prottoyvhattacharyya@gmail.com or open an issue in the repository.