Mobile Dev Toolbelt – Genymotion

In this lesson

  • Manage device profiles
  • Emulate phone functions
  • Simulate device cameras
  • Explore remote control functionality


Tap on time to skip ahead


Genymotion was born out of the need for a fast responsive android emulator. With Genymotion’s device manager we can search and install different device configurations or images to do any sort of testing. We can search for devices based on Android version. As well as device models so if I’m looking for a Nexus 5 or a Nexus 9 etc. I can use these combo boxes to I find them as well as typing any sort of text like so. So once you have downloaded installed device manager, you can run it by selecting it in the list of devices and hitting the play button.


From this screen you can also I reset the device to factory state for, you know, when you’re inevitably going to screw something up. Or you can clone it in case you want to screw up multiple versions of the said device. And you can also tweak the specific settings for the virtual device. But because I’m running that I got that nice little error prompt. And if I’m totally fed up with trying to fix a particular device I can just trash the whole darn thing if I so choose.


So once you have it up and running what can you do with it? Well, you have your standard Android experience where you have your home screen with different pages that you can swipe back and forth. You also have your widgets here like the clock here. And you also have the Google search. You also have the app drawer that has some pre installed applications so for example if you’re app needs to access contacts or calendars you can, er calendar events I should say, you can access. You can actually populate them from within these apps and then pull them into your application. Or if you also have to test your application pushing content to these apps. You can use these for that as well.


Alright we also have the standard Android controls here. We have the home button as well as the always persistent back button which is accessible from the bottom of our emulator as well as the menu here to the right. And if I expanded like here, you can see we have the menu button, the home button. We also have our multi task button here. So that’s pretty standard for a lot of Android emulators. There are some things that help Genymotion stand out and bring some real value to development experience.


One of the things, right of the bat, that you might find interesting is that we can actually emulate phone functions. So I can type and a phone number like so. I was going to put my own but I don’t want you weirdos calling me. And then I can put a number like this. Hit call. And as you can see, up at the top of our device we have an incoming call. This is probably handy if you’re app has to do something with the dialer, receive calls, or something of that nature.


In addition to mimicking actual voice phone call, we can also mimic messages like this. And ny messages I mean text messages. Viola. If I double click on it. It will open up the messages. And here again if your app needs to do stuff with the phone API this is a good way to test it.


The next thing that I find pretty cool with Genymotion is that it has a remote control feature. And what this does is it allows me to take my actual physical device, plug it into my computer in debug mode or actually debug also over WiFi. And if I turn it on I can then pair my device with what I have on my Genymotion emulator. And then I can control it from my phone. And you don’t install any special software on your phone. It should be able to just install via the USB and then have it up and running. So as we can see right now there at the bottom I’m getting different accelerometer and inputs based on how I’m waving my phone around.


This might be handy for a couple different things. One: you might have like a Nexus 5 and you’re wanting to test out Nexus 6 accelerometer. Or you could be a UX professional and you might want to let someone actually interact with your app on an actual device. And then you can watch them from your laptop like so. And I’m sure there some other uses that I’m not thinking of at the moment.


So if we close this. Something else that’s unique to Genymotion is that it can actually mimic your device cameras for you. So I can specify my front camera as the webcam on my laptop. And if I want, I can select preview. And say I wanna see the preview up front. Like so. Let’s stop scaring people. And so that’s kind of interesting. So again if you’re app needs to do interface with the camera and what not you can test it through Genymotion pretty easily.


There are a couple other things that are standard with standard emulators like the ability to turn on your network on and off as well as change where the data is coming from so if you want to test how your app reacts when it’s just on a cellular network you can do that as well as WiFi or no data whatsoever. We can also test out the GPS. And if we turn this on we can specify latitude and longitude we can change the accuracy bearing. Stuff like that. It even has this nice built in map to where I can put in a particular address. Click down, etc, to seet the points like so. So if you’re looking at some of the more advanced features of Genymotion we can also point out a few standard features as well. The ability to take screenshots. As well as to rotate our device as well as change the volume up and down like so. So as you can see Genymotion can be an invaluable tool for your development.