How can i simulate accelerometer in android emulator? [closed]

I don't have an Android phone right now. But in my application I need to use the accelerometer values. How can I do this in a simulated environment?


Solution 1:

The Android emulator doesn't support it itself but OpenIntents' SensorSimulator fills the void. Download and unpack the zip file, then start the standalone jar file:

$ java -jar bin/sensorsimulator.jar

Next, install SensorSimulatorSettings on the emulator using the adb tool which comes with the SDK:

$ adb -s <emulator device> install bin/SensorSimulatorSettings.apk

(run adb devices to find the emulator device name). Finally, run the installed SensorSimulatorSettings app in the emulator and enter the IP address 10.0.2.2 (despite what the SensorSimulator application might suggest. This is an alias to the loopback device of the development host so should always be valid.

Solution 2:

The recent version of emulator comes enabled with Accelerometer and other sensor simulation support. One can telnet localhost 5554:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Android Console: type 'help' for a list of commands
OK

sensor
allows you to request the emulator sensors

available sub-commands:
status list all sensors and their status.
get get sensor values
set set sensor values

KO: missing sub-command

sensor status
acceleration: enabled.
magnetic-field: enabled.
orientation: enabled.
temperature: enabled.
proximity: enabled.
OK

How exactly to simulate a shake, I don't know. Try sending these two commands one after the other rapidly:

sensor set acceleration 0:0:0
sensor set acceleration 99:99:99