There are tons of reasons you want to run android apps on your desktop. You may want to test your application for multiple android versions and configurations efficiently, or you want to play Android games with keyboard and mice, you may want a virtual android device to run your favorite app in the big screen, etc whatever the reason is, you can emulate Android using Genymotion on your Linux desktop. Genymotion is a paid service that requires a license if you want to use it for business and enterprise causes. But you don’t have to pay if you want to use it for personal use.
Before installing Genymotion, you need to have Oracle VM Virtualbox installed on your system. Genymotion relies on it to run its virtualized Android images. To install Virtualbox, simply download the package for your distro or follow instructions from here.
You also need to install HWE if you are on Ubuntu 18.04. To install HWE on Elementary OS and other Ubuntu-based distributions, you can read this nixfaq article. The latest kernel is necessary for performance.
It is also required that you have a machine capable of Virtualization and keep up with the processing it takes to run Genymotion. If you have a good processor with 16GB+ RAM, it should run well. If you do not have powerful hardware, I suggest using Android x86 or
To emulate android, we need Genymotion. With Genymotion, you can create Android virtual devices with custom configurations. You can emulate Android x86, run apps, install Google Apps and play store, emulate sensors, and many more. It is very user friendly and well optimized.
To install Genymotion, you need to download the Genymotion installer binary from this link. After downloading it successfully you need to set the permission accordingly so you can execute it. You can use your file manager to change the permissions. This is how I set it in the ElementaryOS file manager.
You can right-click on the file > properties > permissions then change the permission code to 665 or “Execute” for “everyone”. If you can’t find this option on your file manager, you may have to try the terminal to set permission. To allow executing of the binary via terminal, use this command:
$ chmod +x fullname_of_the_file.extension
After you have acquired executable permission, you have to open a terminal in that directory by opening the folder you have downloaded Genymotion installer to, then right-click on any empty spot and then open in > Terminal for Elementary OS and “Open Terminal Here” for other operating systems.
Once the terminal is open, make sure your terminal shows that you are in the right directory. I have downloaded the installer in my Downloads folder. So my terminal looks like this.
As you can see, I have opened the directory in my Terminal. Now you should run Genymotion installer with this command
$ sudo ./genymotion-3.1.1-linux_x64.bin
The time I’m writing this tutorial, 3.1.1 is the latest version. After running the command, you may have to type “Y” and hit enter if it asks. It will be installed in your system with menu entry and desktop shortcuts.
You need a Genymotion account in order to use the app. The account is free to register. After creating the account you have to just sign into the Genymotion player and start using it.
You can download pre-configured models from the plus icon, or you can create custom devices with your preferred configuration. Once you create your device, it will start downloading the image and then you will be able to boot into it.
Here I have created a device from the preconfigured device list.
You can set how many processor cores you want to provide to the virtual device and you can also allocate RAM size too.
If you choose Custom in the Display option, you will get to choose which Android version you want to use. Once it finishes downloading the image, you can run it by right-clicking on the device and click on Start.
And you will be booted into the virtual device. Now, Genymotion devices don’t come with Google apps pre-installed. There is a button on the right panel that says “Open GAPPS” which you can click and it will download and flash Google apps for you. After that, you can install apps and games from the play store, run youtube, and other Google apps.
While Genymotion is one of the best Android Emulators out there, it does have some major shortcomings. Some you may already guess. Unlike Anbox which uses your system Linux kernel and provides the Android layer on top, Genymotion uses Virtualization technology to emulate Android devices via Virtualbox. Anbox is very lightweight and shares system resources just like a native Linux app would do. But Genymotion does not. So the performance is a bit lower compared to other dual-booted or containerized options.
Genymotion also can not run ARM applications. Most of the games that are trending, can not be installed on Genymotion because it uses x86 instead of ARM instruction sets. Although there are archives you can flash to support ARM applications, it is limited to Android 5 to Android 8.
While Genymotion is a perfect fit for most of the use cases, especially for developers, there are even better options. You take full potential of Android with ARM application support and 100% app coverage with BlissRom for Desktop. It’s not an emulator though, it requires you to install it as an operating system on your disk. You can dual-boot it and you will get full Android as a desktop operating system. It got better support for keyboard and mouse-based navigation and also has many features, including desktop-like interface, customization options, ARM apps support, and much more.
If you want a Linux distro with Anbox preconfigured with the app store out of the box, you can try Extix. This is an interesting Linux distro with Ubuntu as its base and KDE as the Desktop environment. It comes with Anbox pre-installed and with an app store and ability to run GAPPS.
Genymotion is a great tool and one of the most polished and completed Android Emulators for Linux. It’s easy to use and it is optimized well. I have discussed how you can install it on your system and run it. There are some shortcomings I have discussed in this article and I have also provided alternative options. I hope this article will help you to run Android apps on your Linux desktop. Thanks for reading.