Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries. Thanks for all your past and future contributions.

(Difference between revisions)

Mobile Design Pattern: Specifying or Detecting Location

From Wiki
Jump to: navigation, search
deepikagohil (Talk | contribs)
hamishwillee (Talk | contribs)
m (Text replace - "Category:Mobile Design" to "")
(One intermediate revision by one user not shown)
Line 1: Line 1:
{{ArticleMetaData <!-- v1.1 -->
|sourcecode= <!-- Link to example source code e.g. [[Media:The Code Example]] -->
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
|devices= <!-- Devices tested against - e.g. ''devices=Nokia 6131 NFC, Nokia C7-00'') -->
|sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Qt SDK 1.1.4]) -->
|platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later -->
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->
|signing= <!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer -->
|capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. -->
|keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase -->
|id= <!-- Article Id (Knowledge base articles only) -->
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
|translated-by= <!-- [[User:XXXX]] -->
|translated-from-title= <!-- Title only -->
|translated-from-id= <!-- Id of translated revision -->
|review-by= <!-- After re-review: [[User:username]] -->
|review-timestamp= <!-- After re-review: YYYYMMDD -->
|update-by= <!-- After significant update: [[User:username]]-->
|update-timestamp= <!-- After significant update: YYYYMMDD -->
|creationdate= 20090506
|author= [[User:Yiibu]]
[[Category:Mobile Design Patterns]]
This design pattern is part of the [[:Category:Mobile Design Patterns|Mobile Design Patterns]] series.
This design pattern is part of the [[:Category:Mobile Design Patterns|Mobile Design Patterns]] series.

Latest revision as of 06:06, 16 April 2012

Article Metadata
Created: User:Yiibu (06 May 2009)
Last edited: hamishwillee (16 Apr 2012)

This design pattern is part of the Mobile Design Patterns series.


[edit] Description

A means of prompting the user to specify their location and/or auto-detect and display it (typically using GPS or triangulation).

[edit] Use when

  • When location is required to perform a search and/or display contextual options or content.

[edit] Advantages

  • Minimizes text input within location based applications.

[edit] Disadvantages

  • Can impact privacy if poorly implemented.

[edit] Use how

There are many ways to elicit location information from users. They key to a great experience is to combine practicality with privacy by eliciting location as little as possible and providing users with full control over any auto-detection that occurs. As such, this is not so much a pattern as a series of patterns and approaches which can be combined when designing location based services.

[edit] a. Show ‘My location/position’

What: Enables users to request their location at any time. Once detected, the location is stored and can be recalled as needed to complete tasks.

Use when: Use within applications where location is regularly required to complete tasks. Ex. Mapping applications, local search. Can be a useful complement to ‘auto-detect settings’

Use how:

  • Provide a ‘My location’ command within the Options menu.
  • Indicate the location on the map using an icon or easily distinguishable marker.
  • If the exact location cannot be determined, provide a more generic indicator covering the closest discernable area. Many mapping applications use a small, bright circle to indicate exact position and a larger, semi-transparent one to indicate approximate location.


Figure: Location markers don’t have to be boring—especially if accurate navigation is not the goal of the application as seen in Nokia VINE.

[edit] b. Automatic location-detection settings

What: A global (application-wide) setting that enables users to turn location-detection on or off. i.e. to reduce data costs when roaming or for privacy reasons.

Use when: Use within applications that make continuous use of location. Ex. Mapping applications, ‘friend finder’ social applications, local search. Can also be used in conjunction with ‘My location’ prompts.

Use how:

  • Provide an easily discoverable option to enable or disable automatic location detection.
  • Where possible, provide an on-screen indicator of location-detection status (i.e. on or off) as a reminder.


Figure: Nokia Maps provides a ‘Turn positioning off’ command.

[edit] c. ‘Specify/add location’ prompts

What: A prompt asking the user to manually specify location. The location is then saved and reused throughout the application as needed. It is also paired with a ‘change’ prompt allowing the user to change the globally saved location if needed.

Use when:

  • When it is not practical or feasible to auto-detect location.
  • When it is anticipated that users may want to interact with multiple recurring locations. Ex. Home, work, vacation destination.

Use how:

  • Provide an input field or menu enabling the user to specify (or search for) their location. Where possible, provide hints to clarify what type of data is acceptable. i.e. country, city, postcode.
  • If the user input is vague, clarify the value by providing a list of possible matching locations. i.e. ‘Did you mean: London, UK or London, Canada’.
  • Save the confirmed location and make use of it whenever location is required to complete an action.
  • Whenever the location is displayed, provide a ‘change location’ prompt enabling the user to input a different location.
  • If possible, save recently input locations and provide a selectable list of these next time the user accesses the ‘change location’ view.
  • Finally, provide a location management view to enable users to delete old or obsolete locations.


Figure:’s fonefood enables users to specify then change their location.

Tip: Not all location applications require high location granularity. Consider auto-detecting the city or country if this information is useful and available. This information does not typically constitute a privacy risk so asking the user beforehand is not required and they will appreciate not having to input this obvious information. Do consider however that users may be from one city but visiting a different location in the future. Their current location may not always be the one that is relevant to their current task.

This page was last modified on 16 April 2012, at 06:06.
31 page views in the last 30 days.