The HealthApp is a comprehensive health and fitness application that empowers users to take control of their well-being and achieve their fitness goals.
- Health Page
- Incorporates a Step Counter, Heart Rate Measurement, Water, and Calorie Tracker functionalities.
- Automatically resets daily at midnight.
- GPS Activity Tracking
- Integrated map that precisely tracks various sport activities.
- Records the distance covered during the activity and visualizes it on the map.
- Saves relevant activity data and a screenshot of the mapped route upon activity completion.
- Track also runs in background when app is closed but a track started
- Compass
- Utilizes a built-in compass feature to determine direction and orientation, proving particularly valuable for outdoor activities like hiking and route exploration.
- Integration of a light sensor measurement enhances user experience.
- Activity History
- Provides a comprehensive display of saved activity tracks, including corresponding map screenshots and specific data.
- Possibility to delete tracks completely by holding on an entry.
- Data Persistency - Implements data handling through a robust backend Room database.
- Code Quality - Ensures high code quality standards with the integration of Sonarcloud to measure code quality metrics.
- Sensors - Utilizes a variety of sensors, such as Accelerometer and MagneticField Sensor, to enhance application functionality.
- Supports Internationalization - All locales (also Toasts) are translatable.
- Uses ViewBinding for improved performance
- Supports Darkmode
- Java Source/Target Compatibility Version: 17
- Gradle Version: 8.0
- Android Gradle Plugin Version: 8.0.1
- Android Target/Compile SDK: 33
- Android Min SDK: 30
To successfully install and utilize the Health App, follow these steps:
- Obtain a Google Maps API Key by creating one at: console.cloud.google.com
- After obtaining the API Key, insert it into AndroidManifest.xml at
com.google.android.geo.API_KEY
inandroid:value
.
- After obtaining the API Key, insert it into AndroidManifest.xml at
- Following permissions need to be granted for smooth functioning of the Health App
ACCESS_COARSE_LOCATION
&ACCESS_FINE_LOCATION
- Used to determine location for the GPS Tracking System & Compass functionalitiesFOREGROUND_SERVICE
- Enables sending notifications when a track runs in the backgroundBODY_SENSORS
- Allows access to pulse frequency for relevant health measurementsACTIVITY_RECOGNITION
- Used for the step counter feature to count the steps
We take your privacy seriously. HealthApp collects and stores data only for the purpose of enhancing your health and fitness experience. The data will only be stored on the internal storage of the mobile phone.
The following metrics were generated by SonarCloud. They will be updated by SonarCloud when the master branch receives an update
Some images that represent the overall structure of the health app.