DIT212-Alpha - LOST (Repository)
This is an Android mobile application meant to enable and encourage motivated students to find other study partners. The application allows for users to create Broadcasts, "study sessions" in which the user can select a course they are studying at a certain place. The broadcast also contains a description where the user can specify additional information about the session, for example, group-room, floor, members etc. The interface is built on top of a Google maps API where the broadcast locations are represented with markers on the map.
This project was created as part of a course (Object oriented programming project TDA367 / DIT212) taught at Chalmers University in collaboration with the University of Gothenburg. The motivation behind the specific application was to learn the Android development framework for mobile applications.
Usernames - Real name
- git.nuclear - Bashar Oumari
- Sannholm - Benjamin Sannholm
- drage1994 - Mathias Drage
- sophiapham (a.k.a. Pixie Waffle) - Sophia Pham
- Pontare25 - Pontus Nellgård
For Scrum board see GitHub Projects board
To run the application
- Download Android Studio
- Download an Android virtual device (recommended Pixel 2 API 29), or use an actual Android device hooked up to the computer
- Do a Gradle build and run
- Virtual device: Pixel 2 API 29 (OBS! API 30 not supported). Install this device in the Android Studio AVD manager.
- Android gradle plugin version: 4.0.1
- Gradle version: 6.6.1
Begin by registering an account. You can choose to either use a Google account or an email. Login using the defined credentials. (Allow the application to know your location) You should now be greeted with a map. The screen also contains a button in the lower left hand corner titled "Broadcast". Pressing this button will take you to the AddBroadcast screen where you can specify a specific course and set a description and then press add. The application will automatically attach your currrent location to the Broadcast and create a red pin on the map assigned to the broadcast you just created. You can also pan around the map to see other broadcasts by searching for active broadcasts tied to a coursecode in the search bar at the top. If you find a broadcast you can press its pin to interact with it and see its description. If you are the creator you can also choose to either modify or delete it. The application will also detect if you stray too far from the original position and deactivate the broadcast automatically.
- The application is written in Java using Android Studio.
- For handling dependencies Gradle has been used.
- The application is centered around the Google Maps API.
- Jetpack Navigation, a framework used to easily transition between different UI:s.
- Info window (InteractiveInfoWindowAndroid).
- JUnit 4, Framework for testing.
- Espresso, Framework for android UI tests
- JaCoCo, Java Code Coverage Library a tool for Java which generates a code coverage report.
- STAN4j, Structure analysis framework to generate dependency graphs.
The tests are equipped with starter comments. In some cases there are preconditions that must be obliged. There is a mix of both JUnit tests and Espresso tests.
- Android Studio
- Google Maps
- Firebase
- InteractiveInfoWindowAndroid by Appolica