Chapter 10. Client Platforms and Protocols

The location services client is the interface through which users interact with your system. It is the point at which all technologies are brought together?and usability and performance of your client determine a user's opinion of not only your service, but in many cases your company and its brand as well. Mainstream consumers will judge products on issues such as the aesthetics of the form factor and ease of use in addition to application performance and delivery.

The innovation generated by Internet and World Wide Web technology has impacted the way client/server software is developed in many positive ways. Supporting massive installed bases has never been easy, but distributed environments, object-oriented computing, connectionless application protocols, and text-based markup languages have made it easier than ever before. Because business logic is stored on the server, it can be continuously improved?removing many of the headaches of software upgrades and multiversion support. Application functionality is downloaded on the fly as needed.

A key technology that has made many of these advances possible is XML, which allows you to develop a single interface to your location server that uses different style sheets to customize output for the format the client is expecting. HTML, HDML, cHTML, WML, and VXML are all based on the XML specification. If your location server's interface is XML based, supporting a new client (or protocol) requires nothing more than creating a new style sheet. It does not require engineering a new interface.

This chapter discusses common client platforms and network communication methods. Given the highly localized nature of mobile location services and keeping with our focus on extensibility, the chapter concludes with a discussion of developing a mobile location services application ready for internationalization and localization.