Here's my dream application: I am on the road and have a little time to myself. I want to take a break, hide out in the dark with a cold drink and a bag of popcorn and watch a movie (something that I never have time for when I am home!). I turn on my phone and with a few quick clicks, I find my local theater, I can see what's playing and buy a ticket while I am on my way! This capability is not far off — the technology exists in the networks — and Openwave Developers can make it happen. And this brings us to this month's question:
Ask an Expert: How can I participate in Location Services?
Here's the big picture: location is an enabler, not a killer application. It provides a unique capability that lets you create applications that allow a provider to deliver a highly personalized experience. Location-based apps can focus on safety, efficiency, convenience and relevance. On the commercial side, location apps help providers differentiate services, increase ARPU and drive data usage — all of which are incredibly important to service providers.
Focus. Be prepared to target a specific vertical market (i.e. consumer or enterprise) because they have different requirements.
Understand the business. Look at different business models. For example, mobileCommerce in the UK provides a clearinghouse function for wholesaling location from the four major operators in the UK. Microsoft is also rapidly becoming a player in this space. Decide if you want to sell your application to the operator or host it yourself.
Research. Know the operator's current data service environment. You should understand how your application could enhance their current offerings.
Partner. Look for other service enablers that can augment your application. Operators are deploying multimedia servers and WAP Push. Handsets have Java, color and camera capabilities. How can your application leverage these capabilities?
Prepare to share. Understand the operator's license and revenue model. By understanding the value chain from an operator's perspective, which includes the application, the operator, and infrastructure providers like Openwave, you will understand the operator's cost structure. This will allow you to price your solution appropriately allowing everyone to get a share of the revenue.
Plan ahead. Be prepared for service variations. An application provider should expect to pay more for high accuracy location (AGPS) versus low accuracy (cell based). Not all applications need high accuracy to be successful (e.g. many services simply need postal code level accuracy while driving directions often need very accurate, GPS level accuracy). High accuracy location will not always be available (sometimes handsets are indoors or environmental factors impede transmission). In these cases, the application may have to rely on a low accuracy reading. Your application should include a plan for how it can continue to provide value to the consumer even if the accuracy is less than desired.
In addition to this advice, as an ODN member, you have access to the Location Studio SDK (version 2.1) as part of the Openwave SDK. It provides you with tools to build innovative location-based applications including Web services-based APIs for accessing common network services including location requests, content and zones queries, MO/MT SMS message exchange, subscriber validation and verification and application-level billing.
Are you working on a location application? I would love to hear about it. Drop me a line and let me know what you are up to. In the meantime, enjoy your summer and I will talk to you again next month!
Roxanne has been working as an application developer for over 10 years. Her goal is to successfully write this column without having to join the marketing team or sit on the top floor with the execs. Roxy recently sold her vintage Motorola brick phone on eBay for $15. If you have a general question you'd like answered or just want us to know what's on your mind, let her know. Or, for more detailed or specific technical support questions, please visit ODN Developer Support.