Xamarin Android Player Running Slowly on MacBook Air 2015 – Solutions

androidmacbook promacosvirtualization

I've a need to virtualise an Android device on my MacBook Air. I've successfully installed the Xamarin Android Player and downloaded Nexus 7 Marshmallow image. The emulation starts correctly, but it is very slow.

From what I've found from the internet is that this could be a disabled virtualisation issue or outdated firmware. I'm running the latest version of El Captain – 10.11.6, so I think this couldn't be an outdated firmware issue.

There is no (very hard to find) clear walkthrough on how it is possible to enable virtualisation on MacBook Air early 2015.

I know that there are alternatives to Xamarin Android Player, like Visual Studio, but I'm really short on SSD space – 128GB. That's the main reason why I don't want to install Visual Studio with many features what I have no need to use.

Please share your thoughts on what issue could slow down the performance of Android emulator and what would be the optimal way to solve such issue.

Best Answer

I've got tired of searching and waiting for someone's help and approached Xamarin themselves about this issue. Turns out that this product is no longer supported (see link to the official Xamarin statement) and they advise to use other emulators rather than their (what sounds a bit strange for me at least). So following the advise of Xamarin support service I have downloaded Genymotion Android emulator for personal use (as it is free).

After downloading you might want to tweak certain things for emulator to run a bit faster. Genymotion works on top of VirtualBox (it installs it on the background so no need to install it separately)

  1. Switch from Legacy Paravirtualization Interface to Hyper-V (Settings->System->Acceleration)
  2. Enable 3D Acceleration in Settings->Display->Acceleration
  3. VirtualBox will constanly complain that there is more cores used than there is available on the computer (4, when my MacBook Air has only 2). But, if you change this value to 2 the performance of emulator will be much more slower. No idea why.
  4. Make sure that you have Intel HAXM drivers otherwise don't expect the emulator to work at its full speed.

Everything mentioned here fairly experimental, so any if you have any relevant in this field, please share it.