programming language: Kotlin
Sensor Based Shake Game App
I recently had the opportunity to work on a project with a team of four other students at Metropolia University of Applied Sciences in Finland. Our goal was to develop a sensor-based app using advanced Android programming techniques. The app we developed is a shake game that saves the position where you shake the phone, displays your shakes on a map, and allows you to share them with your friends through a social feature.
Developing the app was a challenging but rewarding experience. We used a variety of advanced Android programming techniques, such as:
- Sensor management: We used the Android SensorManager API to access and manage the phone’s sensors. We used the accelerometer sensor to detect when the phone was shaken.
- Location services: We used the Android LocationServices API to access the phone’s GPS location. We used this information to save the position where the phone was shaken.
- Map display: We used the Google Maps API to display a map of the user’s shakes.
- Social features: We used Firebase to implement social features such as user accounts, friend lists, and shake sharing.
We also faced a number of challenges during the development process. For example, we had to carefully calibrate the accelerometer sensor to ensure that the app would accurately detect shakes.
Despite the challenges, we were able to successfully develop and launch our app. We received positive feedback from our professor. We are proud of what we accomplished, and we are grateful for the opportunity to have worked on this project.
Here are some of the lessons we learned while developing the app:
- It is important to carefully plan and design your project before you start coding. This will help you to avoid problems down the road.
- Use existing libraries and frameworks whenever possible. This can save you a lot of time and effort.
- Test your code thoroughly. This is especially important for sensor-based apps, which can be sensitive to environmental factors.
- Get feedback from users early and often. This will help you to identify and fix any problems with your app before you launch it.
Conclusions
I’m honestly not used to the way we decided to organize the code, it was my first android project and they were already senior, so I probably wasn’t the most skilled contributor XD . Regardless everything developing the sensor-based shake game app was a great learning experience! I had to adapt and I did it well. I hope to be able to improve these skills in the future so I can understand more about this topic.
Try yourself my code (I don’t appear as a contributor to the code because as I said it was my first android project and I wasn’t experienced. Especially in collaborative tools so I preferred to give the code I produced directly to my team mates since the timeframe was short)
Version:
1.0
Date:
6 Dec 2023
Client:
Metropolia University of Applied Sciences
Project Duration:
1 month
Place:
Helsinki, Finland
Language:
English
Team:
4 students

