Hi Neha -
Thanks for the warm welcome.
It is my opinion that, in the mobile space, whenever possible it is best overall to develop natively on a platform and not attempt to use the cross-platform frameworks that are out in the marketplace today. I develop applications daily on multiple mobile platforms (not just Android), and I do so in each platforms native language and SDK. I actually wrote a short opinion piece on this for SD Times not too long ago:
http://sdt.bz/36683
My basic premise is that, in order for cross-platform frameworks to be considered functional on all platforms, the end up excelling on none of them. Not all mobile operation systems work the same way, and the users of those systems expect the applications they use to work in a consisten manner on their device. If you write your application once using a cross-platform framework then you have to define the behavior of that application to work in one specific way, so you pick one OS paradigm to design for (usually iOS) and then users of your application on other platforms have an application that doesn't fit with the rest of the apps on their device. Beyond that, as was already mentioned, the feature set available to you is limited. The frameworks can only provide APIs that can be supported on all platforms, so specific features of each platform that don't port well will not exist in the framework. These are the same reasons that
Java ME never truly took off as an application platform, even though it was on all major smartphones very early on. I tried to write my very first mobile app with Java ME on a Windows Mobile 5 device, only to realize very quickly that I couldn't even access the basic API functions to do anything I wanted with the device hardware. Cross-platform frameworks today have since remedied some of this, but the portability concept will always keep them from completely overcoming it.
Learning new technologies associated with application platforms is simply a fact of working in technology, this is not an issue localized to mobile. However, the issue is exacerbated on mobile because the platforms behave so very differently from the user's perspective. Bottom line, cross-platform frameworks are for people more concerned with doing less work than creating a great application experience.