At one point or another, your phone will run out of battery and you’ll be stuck with no charger. If you’re in a familiar place, you might ask one of your friends. But what if your phone dies and you know nobody around you? Recharge allows everyone to share and recharge their phone, while also recharging themselves by relaxing and connecting with new people. It brings people together through a shared difficulty: a dead phone battery.
What it does
'Recharge' is an app that will help people find a charger when their devices are dying by connecting them with other users who have agreed to share. Recharge encourages community and social interaction while resolving a prevalent problem in our everyday lives. The app will automatically find the device model and the appropriate charger for the device. Using a Google Maps API, it will then show the position of the device holder and others who are willing to lend a compatible charger.
How we built it
We built Recharge using Android Studio, the Google Maps API, and Firebase Firestore and Firebase Authentication. We used the default Google Maps activity to track and mark our position, as well as other users. We used the google maps location api to request and use user location. We used firebase auth and firebase store to manage the coordinates, location, and charger type of each user. We intend to combine these with some activities in android, allowing us to show the chargers of nearby individuals.
Challenges we ran into
Some problems that we ran into include: being unable to test on certain devices, working with a strict time limit, and having little to no experience with Android Studio/java in general. We also ran into several technical difficulties, where the API differed vastly from the documentation we could find online. Lastly, near the end of our project, we faced issues with Firebase authentication; it became slower to log us in and it stopped working despite not having changed any code.
Accomplishments that we're proud of
It was the first-ever hackathon for the majority of our team, so we’re proud of how we created a functional app from our incredibly ambitious idea.
What we learned
We have gained a lot of experience collaborating with others. Jumping into the project, we were able to brainstorm a lot of ideas, but quickly learned we would have to prioritize certain features over others. Working with a deadline, productivity and time management was essential to creating a product we were satisfied with.