There's no denying it: piracy on the Android platform is rampant. And there really is little developers can do to protect their applications. Well, developers, your woes should be subsided somewhat, as today, Google launched an official licensing service for applications. By simply inputting code provided by Google, you will give your application the ability to check with Google servers in real-time, and see if the user actually purchased the app. If not, the user will be denied access to the application. For you workflow geeks, check out the diagram here:

Eric Chu, Android ecosystem developer, explains how it works:
This simple and free service provides a secure mechanism to manage access to all Android Market paid applications targeting Android 1.5 or higher. At run time, with the inclusion of a set of libraries provided by us, your application can query the Android Market licensing server to determine the license status of your users. It returns information on whether your users are authorized to use the app based on stored sales records... This licensing service operating real time over the network provides more flexibility in choosing license-enforcement strategies, and a more secure approach in protecting your applications from unauthorized use, than copy protection.
Now, we are unsure how an application will be validated to run if the user is not connected to the Internet. Check out the source link to see how you can take advantage of the new licensing service now.

source: Android Developer's Blog
Graphic courtesy of SpreadShirt