Android Development – five deadly sins
Committing these sins will cause you to burn in Android hell and you will have no place in the Market. Kunal Deo reveals all and he really means business…
Committing these sins will cause you burn in Android hell and you will have no place in the Android Market.
1 Poor Performance
If your application is not responsive enough, your users will receive an ugly ANR (Application Not Responding) message. An ANR is thrown when your application is not able to respond to user input within five seconds, or the Broadcast Receiver does not complete in ten seconds.
An ANR message allows the user to either close the application or wait for it to respond. You know what most users will do, so optimise your application for performance. Or else.
2 Using Excessive System Resources
Always keep in mind that you are programming for low-powered handhelds and not desktop-class systems. There are far more important applications running on the device and you need to play fair. If you are not using system resources responsibly, you will slow down the whole system and the user will banish your application from their device. And so they should.
3 creating a Weird User Interface
People use applications on their smartphones because they are easy to use. Do not try to hijack their user experience. Always provide a consistent user interface. For example, the Back button should always cause the application to show the previous screen or you should go back to the drawing board. Simple.
4 Using undocumented APIs
Never use an undocumented API, no matter how interesting it looks. Undocumented APIs tend to break applications between OS releases. They are also not tested for third-party usage. Using undocumented APIs can cause all sort of problems including performance issues and compatibility.
5 Designing for One Device (or only a small sub-set)
Android is not just about one smartphone, but a whole range of devices. If you design for all of them, you will have a larger marketplace. The Android SDK provides many APIs to support writing device-neutral applications. Use them.