Google has finally launched in-app billing for Android. The big question for me is whether this will help drive revenue for developers. At the moment, with a few exceptions, the Android Market isn’t that good for selling apps. It will be interesting to see if it’s possible to entice users with free apps and then convert them to paid via in-app billing.
The in-app billing security best practices identify some issues for developers. Some of these problems come about due to the ease of being able to unwrap the files in the .apk and view the Java code…
- Verification tasks should be performed on a server so that they can’t be reverse engineered and modified
- Codes should be obfuscated to make it harder to reverse engineer your code
- Don’t use Google sample in-app billing code ‘as is’ otherwise it will be easy to reverse engineer
I suspect the best way to monetise apps will continue to be in-app advertising. However, even that is fraught with complications. Admob has problems with unreliable fill rates (ads not always being served) and low cost per clicks (CPC) (e.g. just search on Admob fill rate and CPC). Consequently, people are tending to use aggregated providers, particularly Mobclix. However even they are getting a reputation for long timescales for being paid (e.g. just search Google for Mobclix Payments).
At a more technical level, I have been having trouble adding Admob to some earlier apps. Admob recently re-engineered its Android SDK (to version 4.0.4) and it no longer works with Android 1.5. It fetches the url for the ad ok but times out fetching the ad itself. The way the SDK works is also different which means many of the old examples online no longer work and will confuse developers. There is still no example for how to add adverts declaratively rather than programatically. All this is poor considering that Admob is the longest running and leader in in-app advertising.