I have a paid app that's been out in the Android Market for a few months now, and up to this point that app had no type of copy protection or license verification scheme.
I have just finished adding an modified version of the LVL code to my app. To test out the code's license response handling, I signed into my dev account on the emulator and went through all of the test responses successfully, and then did the same thing on my real phone (Droid running 2.2).
I thought I should be good to go after the successful testing, but I did one last internet search to see if people have had problems once they allowed their LVL implementation to go live. To my horror, I came across story after story of developers saying that they had successfully tested all of the test responses like I have done, but when they actually uploaded their app with LVL included, all of their users were getting responses saying that they had unlicensed versions of the app, when this wasn't really the case.
With that said, can someone who has successfully deployed the LVL tell me the best way to test and verify that the LVL implementation works as it should (from the perspective of an end-user), before I have to actually publish it to the market? Currently, I have my old, non-licensed, version of my app published on the market, and the testing I've done is using the same version code in the manifest file, and I've only loaded the updated apk onto the emulator and onto my phone (i.e. new apk is NOT uploaded to the market). Sorry for the paranoia, but I'd rather remove the LVL implementation altogether rather than give unlicensed responses to valid users.
I included LVL in my application and haven't had any users (of >10,000 userbase) complain about it saying unlicenced without a valid reason (I.E. credit card declined). I just followed the guidelines and tested on emulator and my phones.
A good way to go about it would be to create a Beta version of your application (perhaps password protect it too) with the LVL code in. Publish it in the market under a different package name, and then get a few beta testers to pay for it and test it (you can refund them all later, or just add their emails to the testing accounts).
Another way would be to add the LVL into your application but have no negative actions occur on licence failed, and then you could use google analytics to detect how many people are getting licence failed/passed.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With