For a long time mobile visionaries have been heralding the imminent arrival of Location Based Services (LBS), and the revolutionary mobile applications and services that they will make possible.
Since the beginning of this year, US cellular operators have been legally required under the provisions of E911-Phase II to furnish real time geolocation data to emergency agencies when users call 911, the nation-wide emergency telephone number. The requirements specify that the systems be able to locate the user with an accuracy of 125 meters at least 67% of the time and 300 meters 95% of the time. This means that your cellular network probably knows where you are. While this has serious privacy implications, it also has the potential for the development of powerful new mobile services. LBS can enhance many types of mobile applications. News, weather, maps, directions, local search and even dating services are all much more attractive when they provide location relevant information without the user needing to key their location information into the phone.
The carriers chose to implement E911 using two very different technologies. The major CDMA carriers, Verizon and Sprint, along with iDEN based Nextel, use phones with built in GPS receivers. Cingular and T-Mobile, the dominant GSM carriers, implemented E911 using a network based solution involving triangulation and timing to calculate the handset's location based on which cells can "see" it.
At this time, there are no browser or SMS based mobile LBS in this country. All the LBS solutions to date involve using a JavaME application on a GPS equipped phone. These Java location-aware applications depend on JavaME API's (JSR 179) which can retrieve location information, typically from an on-board GPS unit. If the phone doesn't have GPS, it generally doesn't support JSR 179. Most GSM phones, with the notable exception of recent Blackberry models (including the 7100g, 7105t and 8700), do not have GPS. Except for Telenav (1st image), a turn by turn directions and local search app, which is available on the Blackberries, GSM carriers Cingular and T-Mobile don't offer any location based services. I'm sure that a Java application could be written to retrieve location information from the network but so far the carriers have been unwilling to share network based location information with their users. Another problem with using Java for LBS, is that differences in the Java implementations between phones make it very difficult to create a single Java app that will run on most phones. Java ME hasn't lived up to the Java "write once, run everywhere" promise. Most commercial JavaMe applications either support only a few phones or have multiple versions to support a larger subset of phones.
There are differences in mobile browser's too, but it's much easier to build a browser app that runs on almost any device than it is to build a Java one. Using the browser rather than a Java app has other advantages. The number of handset based applications that can be installed is limited by available storage space on the handset. Browser based LBS services, by requiring no installation are unlimited and encourage casual use. The lack of browser based LBS applications is solely due to the carriers unwillingness so far to make location information available in http headers even to trusted partner sites. The Java approach limits the adoption of LBS - but I believe that we will start to see browser based LBS services before long.
Like browser based LBS, SMS driven LBS can work on any phone as long as the network has a means of locating the phone. Typically SMS or MMS based services involve the user sending a text message to a specific short code with text like "MAP" to get a map showing their current location or "PUB" to find the nearest pub. I'm not aware of any SMS based LBS on US carriers.
Outside the US, Browser and SMS based LBS do exist. In Japan, a browser based LBS called i-area (2nd Image) was launched by DoCoMo in 2001. From the description, i-area locates the user based on the cell site that he is connected to which means accuracy is limited to a radius of a mile or two in urban areas and up to 15 miles in sparsely populated regions. Still, even that limited accuracy allows useful services to be provided based on the user's city or district. More details and screenshots are here. In 2002, DoCoMo made location data available to "un-official" web sites, meaning sites that are not DoCoMo partners. Users do have to specifically opt-in to the having their location shared with an un-official site each session. DocoMo's largest competitor AU, has a GPS based solution on some phones and both AU and the third Japanese operator J-Phone, offer cell-based location services similar to i-area.
Europe has some LBS pioneers too. This old press release indicates that Orange UK had Browser based LBS using cell data running over five years ago - a year before DoCoMo! In 2004, Orange started offering SMS location services.
Location Based Services do have security implications. Users need assurances that their location will not be disclosed to just anybody. All LBS should (and as far as I know do) ask the user for permission before transmitting location information to third parties. All the JavaME implementations definitely do require that a user grant permission before an application can retrieve location information. While that would seem to offer sufficient protection to the user, the carriers have chosen to add additional security requirements. These requirements have made it more difficult and expensive to develop and distribute LBS applications.
For example, Sprint Java SDK's are missing code that is necessary to compile location apps. The missing modules are only available to developers who are Sprint partners.
The manager of Sprint's developer program posted a a frank and informative comment about Sprint's philosophy regarding developer access to restricted Java API's like location on Slashdot recently.
Nextel doesn't restrict API's or require location based applications to be signed, however Java applications may only be downloaded to Nextel phones from the carrier's portal - this is enforced by the phone's firmware. To place an application on the Nextel portal, it must be certified by Nextel. Users have found ways around this restriction using a data cable and unsupported tools to load un-certified applications on Nextel phones.
On Verizon and Alltel, developing applications, especially location aware ones, is particularly expensive because these carriers use BREW rather than Java ME. BREW is Qualcomm's C++ based mobile application platform that is quite closed compared to Java. According to this article, BREW development tools cost a minimum of $1,900 per developer and all BREW applications must be certified. Certification fees start at $400, however for an application that accesses location data the fee is $2,500. BREW apps may only be sold and distributed on the carrier's portal Signing and certification do increase a user's security but the associated costs discourage LBS application development particularly free and Open Source development.
So where do we stand on LBS in the United States? Until recently, among the US carriers, only Nextel (now part of Sprint) has really delivered on the LBS promise. Nextel launched its first GPS equipped handset in 2002 and has made it's location JavaME API's available to all developers since the beginning. Currently Nextel offers around 60 applications that make use of location information. Nextel's catalog of LBS apps for personal use currently lists 25 applications including Mapquest FindMe (3rd Image), TeleNav, which gives turn by turn directions, Trimble Outdoors (4th Image) which helps hikers find their way and Swordfish , (5th Image) a LB Game! Nextel has been running a ad campaign using highway billboards to push TeleNav and that app seems to be quite popular with users. Nextel also has a number of LB applications intended more for business uses such as delivery tracking and fleet management.
There are even a couple of free applications that users can load on their Nextel (and Boost - Nextel's prepaid product) phones; Accutracking and Mologogo, both of which let you track your (or your children or employee's) phone on the web. A data plan is required but Nextel's unlimited data plan is only $10/month and Nextel's pre-paid brand Boost Mobile, offers unlimited data for 20 cents a day. Note that Nextel and Boost only support OTA download of applications purchased from the Nextel and Boost portals. Other applications like these two are not officially supported and must installed by the user with a data cable and third party software which is generally free and can be found by searching from user forums especially Howard Forums and Idengods.
The other carriers are starting to wake up to the potential of LBS.
Verizon recently launched a BREW location aware application for personal use, VZ Navigator which provides turn by turn directions, maps and local search.
Since acquiring Nextel last year (the networks will remain independent until 2010) Sprint has added a collection of business oriented tracking applications and three consumer oriented LBS products; TeleNav, BIM Active and Garmin Mobile. Bones in Motion's BIM Active (last image) is a mapping and tracking application oriented toward outdoor fitness enthusiasts such as runners, cyclists, skiers, etc. BIM Active tracks progress on a map and reports speed, distance traveled and calories burned. Users can upload their data to the BIM server and use a web app to graph and analyze it. BIM Active is also available on Nextel phones. Garmin Mobile is another app that offers turn by turn directions, maps and local search.
After a slow start, LBS is starting to take off. Nextel pioneered in the genre and still has the largest catalog of location aware applications by far. Sprint and Verizon have seen the opportunity and are starting to act on it. Competitive pressures will force the GSM operators to come up with their own LBS offerings which by necessity will use network location data as their mainstream phones lack GPS. Eventually one of the carriers will make location data available to partner mobile web sites. Users will see the value of sharing their location with services that provide compelling value. Sooner or later the floodgates will open and any site or service that can possibly use location to enhance the user experience will be expected to do so. Your phone as navigator, finder of bargains, restaurants and restrooms will quite possibly be the killer app that makes mobile data a must have for the masses.