What Problem Does This Solve?
Allow other people to track and follow your location.
Why Use This Pattern?
As people and things move around and change their location, the need to keep track of their exact place in near real-time is important to make appropriate decisions like estimating time of arrival, intercepting or meeting along the route, and making sure everything is all right.
When to Use This Pattern
Various scenarios exist when people may want to share their current location. Maybe a person wants to let friends or family know where exactly they are and how long it will take to arrive, or to ensure that they are safe. An events app could allow friends to keep track of their location to let them know when they’ve arrived or to simplify meeting up again.
What’s the Solution?
Location Sharing has two states, not shared and sharing, with not shared being the default state. While the location is not shared, the interface should provide an easy way to enable sharing, usually by clicking a button labeled “Share location” or “Share live location” which will open a dialog that allows users to select the desired sharing settings before they click another button to start sharing. While sharing the app shall provide a way to pause or turn sharing off before it expires naturally.
The share settings should include the duration, recipients, and optionally a message and other parameters like transportation mode. Provide meaningful options and try to choose default settings that reflect the most common and least intrusive value, for instance the app might offer time intervals of 1 hour, 2 hours, 6 hours, and 24 hours where 2 hours is the most common and least intrusive value and therefore should be selected by default. Another example applies to recipients where it’s better to let users opt-in to sharing location with selected (or all) friends from their network than sharing with everyone by default and having to opt out. Selecting people from phone contacts or social media integrations is a nice way to connect and is preferred over other input mechanisms that require typing lengthy email addresses. Adding a custom message or selecting from a set of presets adds a personal touch to the sharing invitations. In some cases, it may also be necessary to specify the messaging app that will be used to share the message. Depending on the app needs, selecting the transportation mode like walking versus driving, is beneficial to deducing that time of arrival.
While sharing the location show a button to pause or cancel sharing before it reaches its defined time limit. While tracking the location on a map provide markers that pulsate or radiate in certain intervals, this indicates that position information is being tracked in real-time and continuously updated.
Sometimes privacy concerns may require the users need to share a less precise location than the default accuracy. In these cases, the app should provide a means to show only an approximation or opt to stay hidden altogether in a so-called “ghost mode”.
Consider whether location sharing is limited to the time while the app is active or available until turned off. The downside of an exclusive app-only sharing model is that location sharing will turn off when user switches, even temporarily, to another app or when the phone locks after a certain period of inactivity.
Another nice feature for apps with a clearly defined target location is to offer an option to stop sharing upon arrival or after crossing a defined boundary.