I am asking this because apparently few devices have support for Linux. My device(Asus) doesn't have USB driver for Linux and Google USB driver is not compatible as well. Which brings me to the emulator. Is it a way to go? Or should I move to Windows?
Most smartphone OEMs' have developed drivers for Mac OS X and Windows, and have excluded Linux. Not only that, but Intel x86 virtualization (which makes your emulator as fast as a real device) works only on Windows, not Linux. However, in Linux you have a kernel module known as kvm
that plays the role of HAXM on Windows. And kvm
works with both Intel AND AMD.
In light of this, you could consider Windows to ease the process of learning Android software development, or even better, use OS X, as it will also allow you to do iOS development (which is not possible on Windows). Moreover, OS X downloads smartphone drivers automatically when you plug the phone in, while on Windows you have to search for drivers on the web.
Further considerations:
Nexus
devices work on Ubuntu Linux without hassles.See also:
1. Which is the best platform to develop Android apps: Windows, MacOS or Linux?
2. Does using Linux OS matter while developing Android apps?