# Emulated Sensors and Features

To simulate various behaviors of your application according to specific use cases, Genymotion Desktop provides easy-to-use widgets which emulate the following sensors and features:

Icon Widget/Feature Icon Widget/Feature
OpenGApps Open GApps Battery Battery
GPS GPS 3.2 Camera Camera
Capture Capture Remote control Remote control
Identifiers Identifiers Disk I/O Disk I/O
Network Network Phone Phone
Sharing App Sharing Sound up Sound down Sound Control
Rotate Rotate Screen Prixel perfect Pixel Perfect
Navigation Nav2 Nav3 Navigation Widgets Power Power

# Open GApps

Disclaimer

GENYMOBILE SAS assumes no liability whatsoever resulting from the download, install and use of Google Play Services within your virtual devices. You are solely responsible for the use and assume all liability related thereto. Moreover, GENYMOBILE SAS disclaims any warranties of any kind, either express or implied, including, without limitation, implied warranties of merchantability, or fitness for a particular purpose regarding the compatibility of the Open GApps packages with any version of Genymotion. In no event shall GENYMOBILE SAS or its affiliates, or their respective officers, directors, employees, or agents be liable with respect to your download or use of the Google Play Services and you release GENYMOBILE SAS from any liability related thereto. You agree to defend, indemnify and hold harmless GENYMOBILE SAS for any claims or costs related to your use or download of the Google Play Services.

The application you are developing or testing may require an interaction with Google Play Services (e.g.: in-app purchasing, advertising, etc.). The Open GApps widget allows you to install a minimum package of those services, also containing an application store.

  1. Click OpenGApps and follow the instructions. At the end of the installation, you are redirected to the Open GApps website.
  2. Reboot the virtual device when prompted.

# Alternative method from the Open GApps website

Important

Using this method may not work since opengapps.org regularly update their package and may introduce unforeseen bugs. This should only be used in case the Standard method fails.

  1. Visit opengapps.org (opens new window)
  2. Select platform x86
  3. Select the Android version corresponding to your virtual device
  4. Select variant pico
  5. Download the selected Open GApps package
  6. Drag and drop the open_gapps-x86-X.X-pico-XXXXXXXX.zip zip archive to the Genymotion virtual device display, or use the command line method.
Command line method

Use ADB:

# Upload the zip archive
adb push open_gapps-x86-X.X-pico-XXXXXXXX.zip /sdcard/Download/open_gapps-x86-X.X-pico-XXXXXXXX.zip

# Flash the zip archive
adb shell /system/bin/flash-archive.sh /sdcard/Download/open_gapps-x86-X.X-pico-XXXXXXXX.zip
  1. When flashing is complete, reboot the virtual device.

# Battery

The Battery widget allows you to test how your application reacts with different battery charge levels and states of charge. To use the Battery widget:

  1. Click Battery
  2. Modify the charge level using the slider or enter a value in the Charge level field.
  3. Modify the state of charge by checking the State of charge box:
    • Check to activate the Charging state. This simulates that the power supply is plugged in and the battery is charging.
    • Uncheck to activate the Discharging state. This simulates that the power supply is unplugged and the battery is discharging.

# GPS

# Single position

To use the GPS widget and set a single position:

  1. Click GPS and activate the GPS emulation.
  2. Select the Manual tab.
  3. Set the following fields:
Field Description Value range
Latitude The latitude value you wish to simulate. -90° to 90°
Longitude The longitude value you wish to simulate. -180° to 180°
Altitude The altitude value you wish to simulate. -10000m to 10000m
Accuracy Use the slider or enter a value to set the accuracy. 0m to 200m
Bearing Use the compass or enter a value to set the bearing. 0° to 359.99°

You can also define a location using the Map button.

Note

Many applications do not rely on the GPS orientation, but use the device accelerometer or gyroscope to determine the bearing of the device. This is not emulated yet, but you can use the remote control widget to use a real device with accelerometer and/or gyroscope. Please refer to Remote Control section.

# Simulate routes 3.2 License required

It is now possible to simulate routes by uploading a track file.

Important

This feature only supports GPX trace format for the moment. More formats may be added in the future.

Your GPX file must contain timestamps and elevation, such as <trkpt lat="46.0538" lon="6.6692"><ele>1410.734375</ele><time>2020-02-21T13:51:25Z</time></trkpt>

If your GPX file contains more than one track, only the first track will be played.

  1. Generate a GPX track file with your favourite application, such as GoogleEarth.
  2. Click GPS and activate the GPS emulation.
  3. Select the Replay tab.
    GPS tracks open
  4. Click Open to upload your GPX.
  5. Click Play/Pause to start or pause the route simulation.
    GPS tracks play
  6. Change play speed by selecting a replay speed in the drop-down menu.

# Camera

The Camera widget allows you to send a video stream to the virtual device cameras. With this widget, you can test an Android application that uses an Android built-in camera. The video stream comes from a real physical webcam connected or integrated into your computer.
To use the Camera widget, click webcam

Note

Virtual cameras, such as CamTwist, Virtual Webcam or akvcam, are not supported.

# Capture

The Capture widget Screenshot active allows you to take a screenshot or screencast of virtual devices. This way, you can share images or videos of your applications:

Icon
screenshot Take a screenshot.
Record Record a screencast.
Click Record to start recording and click again to stop.
Folder Browse the recorded screenshots and/or screencasts folder.
The default folder can be changed in Genymotion > Settings > Device.

# Remote control

With the Remote control widget Remote control widget button, you can take control of a virtual device from a physical device (any phone or tablet running Android version 2.2/API level 8/Froyo or above). This widget works with a specific Android application that runs on the physical device and forwards touch inputs and accelerometer events to Genymotion Desktop. As a result, you can test your application as if you were holding a device in your hands.

The Remote control widget requires to have ADB installed on your computer. For more information, please refer to section ADB

To use the Remote control widget:

  1. Connect your physical device either by wire or with Wi-Fi. To connect with Wi-Fi, your physical device must support ADB over network.
  2. On your physical device, go to Settings → Developer options.
About Developer options

If you haven't unlocked the Developer options menu yet, go to Settings → About and click several times on Build number until you get a message saying that Developer options are now available.

  1. Check Android debugging and then ADB over network.
  2. Connect your physical device to the Wi-Fi and retrieve its IP address from the Wi-Fi menu.
  3. Open a terminal or command prompt and enter adb connect {your_device_IP}.
  4. Click Remote control widget button
  5. Activate the widget by clicking On. Genymotion Desktop tries to detect any connected Android device.
  6. Select your device from the Available devices drop-down list and click Start.

Note

If the device is connected to ADB and not visible in the list, restart the widget.

  1. Check the desired options:
    • Enable preview: enables previewing your Genymotion Desktop screen on your physical device.
    • Enable touch screen: allows your physical device to send touch events to Genymotion Desktop.
    • Enable accelerometer: allows your physical device to send accelerometer events to Genymotion Desktop.

The Remote control widget automatically stops when you disconnect your device.

# Identifiers

The Identifiers widget ID widget shows Android ID and Device ID numbers. You can view and edit these values at any time, without having to reboot your virtual device:

Android ID

An Android ID is a 64-bit number randomly generated when the user first sets up the device. It remains the same for the whole lifetime of the user's device. Android 4.2.2 and greater versions support multiple user accounts, each one having a unique Android ID. When clicking Random button, a random Android identifier is generated. Valid Android ID numbers are 16-hexadecimal digits long.

You are not allowed to set an empty Android ID.

On Android 8.0 and above, the Android ID has a different value for each application on the device. This is not the case in Genymotion: the Android ID remains the same for all applications.

Device ID / IMEI / MEID

By default, a new virtual device is deployed with the default device ID number 000000000000000. When clicking Random button, a random identifier is generated. As IMEI or MEID numbers are used as device ID, Genymotion Desktop generates numbers compliant with the GSM 02.16 standard and the 3GPP2 specification (14 digits or hexadecimal digits + a checksum digit). Valid characters for setting device ID/IMEI/MEID are:

  • lower-case and upper-case letters [a-z, A-Z]
  • digits [0-9]
  • dots [ . ], dashes [ - ] and underscores [ _ ]

# Disk I/O

The Disk I/O widget allows you to emulate devices with slow internal storage. It can be very handy if your app requires reading large amount of data from the disk such as gallery apps that load locally stored images or games that load large assets.

To simulate high or poor disk performance:

  1. Click Disk IO

  2. From Profile, select a type of device:

    Profile Read speed limit
    High-end device 200 MiB per second
    Mid-range device 100 MiB per second
    Low-end device 50 MiB per second
    Custom device Enter the read speed limit you wish to emulate in MiB
  3. Click Update.

Note

When switching from a device profile to another, the disk cache is automatically cleared. You can force clearing the cache by clicking Clear Cache.

# Network

The Network widget Network widget button allows you to test how your application reacts with different network quality and performance types:

  1. Click Network widget button
  2. Activate the network simulation by clicking On.
  3. Select a network profile from the Profile drop-down list:
Profile Upload speed Download speed Upload/Download delay (in ms) Packet loss DNS delay (in ms)
No data 0Kb/s 0Kb/s 0 100% 0
GPRS 40Kb/s 40Kb/s 500 0.01% 1000
Edge 200Kb/s 240Kb/s 400 0.01% 800
3G 1.5Mb/s 7.2Mb/s 100 0.01% 200
4G 5.5Mb/s 17.9Mb/s 50 0.01% 100
4G
(high DNS delay)
5.5Mb/s 17.9Mb/s 50 0.01% 3000
4G
(high packet losses)
5.5Mb/s 17.9Mb/s 50 10% 100
Wifi 33.0Mb/s 40.0Mb/s 0 0% 0

Note

When activating the widget for the first time, the profile network is automatically set to Wifi . It then takes the last network profile used.

# Phone

Note

Base band is not emulated - it is not possible to call, receive or send text messages to physical devices.

The Phone widget allows you to test applications relying on telephony features and observe their behavior when receiving a call or a text message. To use the Phone widget, click Text and call

Simulate an incoming call
  1. Enter an incoming phone number
  2. Click Call
Simulate an incoming text message (SMS)
  1. Enter an incoming phone number
  2. Enter a text message
  3. Click Send message

The text message is displayed in the virtual device via a notification and can also be read in the Messaging application.

# App Sharing License required

The App sharing feature allows you to share an application with other users via Genymotion Cloud SaaS so they can have access to the application within a web browser. As the shared application is being made accessible via a virtual machine running in Genymotion Cloud SaaS, designers, sales representatives or any stakeholders not having Genymotion Desktop Software installed on their workstation are able to see the application being developed or tested in order to give their feedback.

To share an application, you must have previously installed it in a virtual device of Genymotion Desktop. Please refer to Deploy an Application for details.

Then:

  1. From your virtual device, click App Sharing
  2. In Users, enter the e-mail addresses of the users with whom you wish to share the application
  3. (Optional) In the Message field, add the message of your choice to give information to the users about the purpose of the shared application
  4. Click Share

This uploads the application and makes it available to the users you have specified. In the meantime, a notification e-mail is sent to them. They can access the shared application via that e-mail or by signing in directly to Genymotion Cloud SaaS.

Important

An application shared from Genymotion Desktop software to multiple users is not shared among all receivers but instead cloned individually into virtual devices with said application running in Genymotion Cloud SaaS for each one of the receivers.

# Sound Control

You can control the volume of the sound emitted by your virtual device by clicking Volume up or Volume down

# Rotate Screen

You can rotate the screen of your virtual device by clicking Rotate

# Pixel Perfect

With Pixel Perfect, you can be highly precise in the development of your user interface and ensure every pixel of your application really looks as it should. One pixel of the virtual device is displayed using one pixel of your computer screen.

Click Pixel Perfect button once to enable Pixel Perfect. Click again to disable it.

Important

If the virtual device screen size is larger than your computer screen size, the virtual device window will be maximized and you will be able to use scrollbars to move inside the screen.

Icon
Recent Apps Brings the Android Recent Screen which lists recently accessed activities and tasks.
Home Emulates the Home button of a real device. Navigate to Android Home page.
Back Emulates the Back button of a real device.

# Power

Click Power to simulate a real device power button.

A single left click on the widget will put the virtual device to sleep. Long left-click to simulate a power button hold (reset and/or power off, depending on Android version).