Scavenger hunts were always a fun way to explore the world around us when we were kids! There were prizes waiting for the taking, and we were excited to go find them. Now with the smartphones in the hands every day, we seem to stay indoors more and more regularly. But what if we could bring back the joy of scavenger hunts with a new twist?

TrailDog is now bringing you Treats, such as coupons, messages, jokes, riddles, and much more! But you have to find it! Will you dare to venture?

What it does

TrailDog is an Android mobile app that will let you discover and collect Treats that will hopefully make your day a little bit better. Whether its a funny joke, or a coupon you can redeem at the local coffee shop, TrailDog will let you collect these Treats if you are within a certain radius of where the Treat is buried.

How we built it

Our team developed the Android mobile app using Android Studio. We used Firebase for our database and login services, and Google Maps for the geofencing and tracking of the user's location. When the app gets the user's updated location, it will check if it is within the specified radius of a Treat. If that Treat has not been seen by this user before, TrailDog will alert the user with the Treat's information. Over time, these treats can be collected within the app Wallet to be revisited or redeemed at a later time.

Challenges we ran into

Originally, we tried using a couple different Geofencing APIs that were available, such as Radar.IO. However, after several hours of struggling with setting up webhooks and event receivers, we ended up going with the Google Maps API, which had high-quality documentation, and did not require overly-fancy Java object like the other APIs. On the UI side, we struggled with how we wanted organize the Home screen layout. In the end, with ended up with a top-and-bottom 50/50 view, which had a list of the Treats, and a Google Map view. After deciding and implementing this view, we worked on finding a non-intrusive way of displaying the Wallet. We ended up with a simple drawer menu that would reveal the Wallet option and let the user see the Treats that were discovered thus far.

Accomplishments that we're proud of

We believe we've created a unique application that is easy to use and has a new spin on the use of geofencing. We've put the users' needs first when designing TrailDog. Additionally, we are proud of forming a team, generating an idea, and executing on that vision in such a short amount of time.

What we learned

Firstly, we learned that geofencing can be quite a bit more complicated than we had imagined. We also learned that it is great to have a team where each member has a varied set of skills, to cover all the different bases of this project. Finally, we dared to venture into this new idea, and that's what we learned the most from.

What's next for TrailDog

If given more time, our short term goals would be to further enhance the UI, as well as more flexibility with the creation and maintenance of the Treats. We would also like to make significant UI improvements to the Wallet screen. In the long-term, we would like to expand the capabilities of the geofencing, such as removing the limitation of a circular geofence to any polygon.

Share this project: