Welcome to my mobile application!
The Teasure Hunt program mimics a geochacing application allowing a user to search for a specific location given a clue and subsequent hints if desired. Once a user believes they are at location in question, they are able to confirm if they are correct or not.
The following is a brief overview of the file structure
app/src/main/java/com/example/treasurehunt
- images and strings
This application includes the following features:
- A location persmission request screen for different levels of location accuracy.
- A list of rules for the game.
- Two (2) different locations with 1 clue and 1 optional hint per location. Hints are may be toggled between hidden and exposed.
- Confirmation of a found location by clicking "Found It".
- Congratulatory screens are presented when a location is found "retry screens" are presented when the user location is >0.25Km from the actual location (determined by the haversine formula).
- A cumulative timer is available to keep track of the total time spent searching for all locations. The timer only advances when a clue is actively being searched for. The timer is reset when the game is restarted.
- Implements MVVM architecture for scalability, separation of concerns, maintainability and reusability.
- Programming Languages: Kotlin, XML
- Frameworks: Android SDK, Jetpack Compose
- IDE: Android Studio
Prerequisites: Android Studio
Once you have downloaded and installed Android Studio:
- Clone the repo to your desired directory
- Open Android Studio
- Go to File > Open
- Select the project folder
- The project will open once the import is complete
Important
The correct locations for each clue are hard coded in datasource.kt. To advance through the application, the emulator location must be manually configured before each location check. Please refer to the discussion HERE to achieve this.
- Press the Run icon in the top right corner of the IDE
- After successful completion of the first clue, make sure to change the emulator location for the next clue.






