TUSNav is a crowdsourced indoor navigation app designed for students, staff, and visitors at the TUS Moylish Campus. This mobile application combines Google Maps for outdoor navigation with crowdsourced, step-by-step directions enhanced by images for indoor navigation. By leveraging community contributions, TUSNav provides an effective solution for navigating campus buildings without relying on expensive infrastructure like Bluetooth beacons or compromising building blueprints.
- Registration and Login: Secure Firebase Authentication ensures user access and contributor authentication.
- Autologin: Automatically logs in contributors if credentials are stored locally.
- Indoor and Outdoor Navigation: Google Maps handles outdoor navigation, while crowdsourced directions and images provide precise indoor navigation.
- Notifications: Alerts users when within 100 meters of their destination using the Haversine formula.
- Rating System: Enables users to rate contributed directions via a slider, ensuring quality and feedback.
TUSNav requires the following permissions for optimal functionality:
- Camera: Capture images for landmark navigation.
- Location: Access GPS data for accurate navigation.
- Notifications: Send distance-based alerts.
- Internet: Perform network operations, including fetching data from APIs.
- Media Access: Read user-selected images and videos for directions.
TUSNav addresses the common challenge of navigating large campus buildings and finding specific rooms, especially for newcomers or users facing relocated lectures. It utilizes crowdsourced knowledge for reliable indoor navigation and simplifies movement across campus.
- Outdoor Navigation: Uses GPS data and Google Maps to guide users to building entrances.
- Indoor Navigation: Crowdsourced step-by-step directions with visual landmarks ensure precise navigation within buildings.
- Contributor Features: Registered users can add and rate directions to improve navigation quality.
- Firebase Authentication and Storage: Secure user access and image storage.
- Google Maps API: Outdoor navigation features.
- Haversine Formula: Distance calculations for notifications.
- Device Media Cache: Optimizes navigation image storage.
- Mobile APIs: Integrates camera, location, and media services.
- Find the exported realtime database json file in the firebaseStruct folder.
- The maps api key and
google-services.jsonfile have both been removed from this repository for security reasons. If you want to run this project, you will need to supply your owngoogle-services.jsonfile and enter your maps api key in the strings.xml file. You can generate your owngoogle-services.jsonfile by creating a new Firebase project.
-
Clone the repository:
git clone https://github.com/YourGitHubUsername/TUSNav.git cd TUSNav -
Install dependencies:
- Use Android Studio to load the project and manage dependencies.
-
Run the app:
- Connect your Android device or emulator and launch the app.
Feel free to reach out for inquiries or collaborations:
- Michael Alfred: success_fred@yahoo.com
.png)
.png)
.png)
.png)
.png)
.png)
.png)