An Android application that revolutionizes the car-sharing experience
This repository contains the source code for the Mustang Clone Android application, a modern car-sharing platform that connects car owners with renters. Built with the latest Android technologies and structured with Gradle and Kotlin DSL build system.
🚗 For Car Owners
- Easy vehicle listing and management
- Secure booking system
- Real-time availability calendar
- Automated payment processing
- Insurance coverage integration
- Rating and review system
🔑 For Renters
- Quick car search and filtering
- Instant booking capability
- Secure payment gateway
- In-app navigation
- 24/7 customer support access
- Digital key sharing
⚡ Technical Features
- Modern Material Design UI
- Offline-first architecture
- Real-time notifications
- Location-based services
- Secure authentication
- Payment gateway integration
- Image compression and caching
- Google Maps integration
Mustang-Clone/
├── Group Project/ # Main project directory
│ ├── app/ # Android application module
│ │ ├── src/
│ │ │ ├── main/ # Main source directory
│ │ │ │ ├── java/ # Kotlin/Java source files
│ │ │ │ │ ├── activities/ # Activity classes
│ │ │ │ │ ├── adapters/ # RecyclerView adapters
│ │ │ │ │ ├── models/ # Data models
│ │ │ │ │ ├── services/ # Background services
│ │ │ │ │ ├── utils/ # Utility classes
│ │ │ │ │ └── viewmodels/ # ViewModel classes
│ │ │ │ ├── res/ # Resources directory
│ │ │ │ │ ├── layout/ # XML layout files
│ │ │ │ │ ├── values/ # Colors, strings, styles
│ │ │ │ │ ├── drawable/ # Images and icons
│ │ │ │ │ └── navigation/ # Navigation graphs
│ │ │ │ └── AndroidManifest.xml
│ │ │ ├── androidTest/ # Instrumentation tests
│ │ │ └── test/ # Unit tests
│ │ ├── build/ # Build outputs
│ │ └── build.gradle.kts # App-level build config
│ ├── gradle/
│ │ └── wrapper/ # Gradle wrapper files
│ ├── build.gradle.kts # Project-level build file
│ ├── settings.gradle.kts # Gradle settings
│ └── local.properties # Local SDK config
└── README.md # This file
- Java JDK 11 or 17
- Android SDK
- Android Studio (recommended) or compatible IDE
- Android device or emulator
- Clone the repository:
git clone https://github.com/Kalharapasan/Mustang-Clone.git
cd "Mustang Clone/Git/Group Project"- Configure Android SDK path in
local.properties:
sdk.dir = C:\\Users\\<your-user>\\AppData\\Local\\Android\\sdk- Open in Android Studio:
- Launch Android Studio
- Select: File > Open
- Navigate to and select the "Group Project" folder
From PowerShell in the "Group Project" directory:
- Build debug APK:
.\gradlew.bat assembleDebug- Install on connected device:
.\gradlew.bat installDebug- Run tests:
.\gradlew.bat test- Clean build:
.\gradlew.bat clean- Ensure Android Studio is properly configured
- Sync project with Gradle files
- Wait for indexing and dependency resolution
- Build and run the project
-
Development Mode
- Open project in Android Studio
- Select a connected device or emulator
- Click 'Run' (
▶️ ) or press Shift+F10 - The app will build and launch automatically
-
Testing Features
- Car Listing: Use test credentials in
app/src/main/assets/test_data.json - Payments: Use sandbox payment credentials
- Location: Enable mock location in developer options
- Push Notifications: Use Firebase test console
- Car Listing: Use test credentials in
-
Performance Monitoring
- Enable USB debugging for real-time monitoring
- Check Android Studio's CPU and memory monitors
- Use Firebase Performance Monitoring dashboard
- Use Android Studio's Layout Inspector for UI issues
- Enable Network Inspector for API calls
- Check Logcat with filter:
tag:MustangClone - Use Android Device File Explorer for local storage inspection
For signed release builds:
- Create a keystore file (if not exists)
- Configure signing in
app/build.gradle.kts - Store sensitive data in
keystore.properties(do not commit this file) - Run
.\gradlew.bat assembleRelease
- Fork the repository
- Create a feature branch from
main - Make your changes
- Test thoroughly
- Submit a Pull Request with clear description
- Gradle Sync Issues: Run
.\gradlew.bat --refresh-dependencies - Build Errors: Verify JDK version and
JAVA_HOMEsetting - SDK Issues: Check
local.propertiesSDK path - Device Connection: Enable USB debugging on device
- Owner: Kalharapasan
- Repository: Mustang-Clone
📄 License: Proprietary – Permission Required
For detailed documentation and guides, please refer to the project Wiki or contact the repository owner.