With the release of Google’s Nexus and other Android-based smartphones becoming more prevalent, more developers are making the move to Android development, often coming from a Windows Mobile or other mobile background. These developers have to take into consideration that, although mobile development projects fall into the same category, an apple is still an apple and an orange is still an orange.
Many developers fall into a pattern of development processes that are hard to shake, and tend to expect one platform to support the same functionality that others support. For example, Android does not support thread-blocking dialogs, or methods to terminate applications. Without being condescending, perhaps it’s time for those developers to learn some new techniques, or stick with Windows Mobile development.
The Android GUI toolkit is very much event-driven, which determines that programming techniques such as displaying a dialog while blocking the thread that initiated that dialog until it closes, is not possible with Android. This is just one example of how Android programming is a bit different than say, Windows Mobile. It requires a different way of thinking while working on your applications.
Just like moving from Perl to PHP, or Visual Basic to C#, the learning curve of moving from one mobile development platform to another, such as Android, is challenging, but with patience and persistence, developers will find the approach that works for them in this new medium and a new satisfaction that makes the process both fullfilling and functional.