Skip to content

GDSC-MCE/Android-Study-Jams

 
 

Repository files navigation

BusTopper

Bus Tracking app

Problem Statement:

With the rise in covid cases, it is unsafe to stay in public places for a long duration. Public bus stops can be a source of spreading in terms of covid infections, avoiding contact and exposure is the best way, but unfortunately, due to heavy traffic in the cities – college buses arrive at varied intervals of time, leading students to come 15-20 minutes earlier. We at Marian Engineering College have devised a solution for our fellow students. A Mobile Application that is accessible by all students using the bus service.

Proposed Solution:

“BusTopper” – A College Bus Tracking System helps students to continuously track the buses available via their route and notify them of any changes in the bus route. We are building two separate interface for drivers and students where they can sign up separately and connect with each other. A End user can either sign in the “Driver” mode or “Student Mode’. Driver Features: Provide vehicle information, Bus number. Provide starting and ending locations with appropriate time schedules according to google traffic API.

photo_2022-01-15_22-45-36 photo_2022-01-15_22-45-38

Student Features:

Single tap-in app location tracking feature using Google Maps API so students can track the bus in real time. Set custom boarding points at any time within schedule and be updated with a ETA of the bus to their boarding point.

Every Driver users will get a unique id after creating an account in this app. This id can be shared with students to join the bus. The "JOIN BUS" screen in this app helps students to register with their bus via pasting the unique code given by their bus driver.

Drivers can approve the valid students who were joined via this unique code.

For testing purpose , you can join with this sample code.

Bustopper-fZXBXLGE9Se2IPoxI3bSRYeTLJq2

Functionality and Concepts Used:

  • Livedata & ViewModel : To seperate business logic and data MVVM
  • Room Database : To store Driver boarding points and cached datas
  • Fragments : To view multiple screens in single activity
  • Jetpack Navigation : To navigate between fragments
  • Custom Stepper View : To show boarding points as step by step
  • Firebase Database and Auth : Used to connect and network between users (Drivers and Students)
  • GoogleMaps : To preview bus location in Map
  • Kotlin corutines : To process asynchronous data
  • Different types of ViewGroups and Views : To make interactive ui elements
  • Location API : To get Gps position and speed values

Application Link & Future Scope:

The application is current in the alpha testing phase in our campus with a limited number of students with access.
Application Link: App Link

Once the application has been tested with all drivers and students in the test phase, we will begin rolling it out for all the students on campus and bundle it along with our academic tracker application.

We aim to implement the following features by the end of this year as updates:

  • Automatic Attendance Tracking System using NFC Stations on Bus.
  • Bus Fee Payment System Integrated with the application.
  • Emergency Alert System
  • Notifying Driver about skipping a student boarding point.
  • Informing Campus about late arrival with new ETA.
  • Informs the nearby buses in emergency situations
  • Build NFC and QR code system
  • Build a new category of user which will be mainly used by bus administrators and institution owners to schedule and control drivers
  • some security improvements and enhanced backend system design
  • Embedded support for GPS systems and NFC systems
  • Build a in-app seating arrangement system which extensively helps in covid management by analysing and tracking which all students were in primary and secondary contacts

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 100.0%