CT5006 Music Business Mobile App Progress Post 11

This post details the creation of the music trail.

For the music trail aspect of this assignment, 6 locations in Swindon + the MECA were chosen. These are:

  • The Victoria
  • Swindon Arts Centre
  • Kempster and Son
  • Holmes Music
  • The Oasis
  • The Wyvern Theatre
  • These are a mix of live music, performing arts and multi-purpose venues, as well as some music shops.

    The concept for the trail was to use the google maps ‘Directions’ API to map out routes between each location, starting and ending with MECA.

    In implementation, the directions API is not used dynamically. API calls were made manually, then the routes provided were tuned to better fit the roads + paths. This decision was based mainly to reduce external dependencies, as a result the music trail is fully available without internet connection. IndexedDB was planned for implementation with this dynamic API call method, but is no longer necessary with defining the routes manually.

    Interaction when passing along the trail comes when a user is within 100m of a trail location. Fine Latng coordinates are obtained using Cordova, then passed to the google maps ‘Geometry’ library to find the euclidean distance between that, and each music trail location. Location data is updated every 10 seconds, using the watchPosition function from Cordova (Cordova migration will be covered next blog post). When within this 100m bound, the user’s phone vibrates, and the infowindow (containing a name and summary of the location) opens above the nearby marker. The vibration/infowindow triggers only once, and resets when the user moves out of the 100m bounds.

    Music trail icons

    Three different icons were used:

  • Generic POI – Blank purple marker from google
  • Music Trail Location – Custom scaled image of two Quaver notes
  • User Location – Custom green pixel cross
  • User location on trail

    Venue Infowindow

    Full Music Trail

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    This site uses Akismet to reduce spam. Learn how your comment data is processed.