Thursday 5 July 2012

Welcome

Welcome to the development blog for the Trailer iPhone and web applications. I plan to use these pages to share information about issues I encounter during the design and implementation process for these applications.
The main component of Trailer is an iPhone application, which is available from the iTunes App Store. The Trailer iPhone application uses the map display and location tracking features of the iPhone. The main features of the app are:

  • Annotated map display
    When the user brings the app to the foreground, it presents a list of user-generated maps, each of which shows points of interest in a particular geographic area. Each point of interest will be displayed at the centre of a shaded circular zone (the radius of which is selected by the map compiler). Clicking on the centre of the zone will bring up an iOS annotation object which gives a name and/or address for the point of interest. The annotation object can provide a link to access a message or web page associated with the point of interest.
  • Automatic zooming
    When the user is viewing a map which covers their physical location, the application will use the iOS location tracking features to display the user's position on the map. When the user crosses into one of the circular zones around a point of interest, the map will automatically zoom in on that zone. When the user crosses out of a zone, the map will zoom out to allow all points of interest for the current map to be visible.
  • Background notifications
    On phones which support background processing (i.e. iPhone 3GS or later, running iOS 5 or later), when the user puts the app into the background with a map displayed (either by locking the iPhone or by pressing the home button), the app will continue to track the user's location from the background for up to an hour. When the app is in this background tracking mode, the user will be notified when the app detects that they have entered a zone (except for when the user re-enters the most recently entered zone, for which the repeat notification will be supresses).
The location tracking and background notification services are controlled by the standard iOS settings framework.
The iOS application comes with pre-loaded maps of locations of interest in Rome, Venice, Barcelona and Paris. Additional maps can be loaded via email or web links, by compiling a file with the extension .tqz which matches the format consumed by the iPhone application. The easiest way to build files like this at the moment is through the Trailer web application at http://tl-trailer.appspot.com, but there's nothing magical about the required format and any developer who is interested in working on a mashup to compile .tqz files using other sources is welcome to have a look at files generated from the appspot.com application and implement their own generator..