The Compass Application is an Android application that provides a compass functionality, allowing users to determine their orientation relative to magnetic north. It utilizes sensors such as accelerometer, compass, and gyroscope to provide accurate readings.
- Provides a real-time compass display indicating the user's orientation.
- Provides options to customize appearance and settings.
- Supports haptic feedback for better user experience.
- Indicates sensor accuracy and true north indication.
- Customizable appearance with adjustable text sizes and colors.
- Integration with sensors including accelerometer, compass, and gyroscope.
- ViewModel architecture for managing compass data and functionality.
- LiveData objects for observing azimuth angle, sensor accuracy, and more.
The application requires the following permissions:
ACCESS_COARSE_LOCATION
: Allows the app to access approximate location.ACCESS_FINE_LOCATION
: Allows the app to access precise location.
To install the Compass Application on your Android device:
- Clone the repository to your local machine using the following command:
git clone https://github.com/wenubey/compass-application.git
- Open Android Studio and select "Open an existing Android Studio project".
- Navigate to the location where you cloned the repository and select the
compass-application
directory. - Android Studio will import the project. Wait for the process to complete.
- Connect your Android device to your computer and ensure USB debugging is enabled.
- Build and run the application on your device by clicking the "Run" button in Android Studio.
- Upon launching the application, the main activity displays the compass interface.
- The azimuth angle is updated in real-time as the user's orientation changes.
- Customize appearance and settings as needed.
- Interact with the compass view to set azimuth manually or enable/disable features.
The Compass Application relies on the following dependencies:
- Kotlin: The programming language used for implementation.
- AndroidX: Jetpack libraries for modern Android development.
- Android Architecture Components: Provides LiveData and ViewModel for managing UI-related data.
- Google Play Services: Provides access to location services for accurate compass readings.