Runtime for Android
- OpenSesame runtime for Android
- Developing experiments for Android
- Know issue: Frozen or misbehaving virtual keyboard
- Forum topics
OpenSesame runtime for Android
Download
You can download the OpenSesame runtime for Android through the Android market / Google Play Store:
Alternatively, you can download the latest OpenSesame runtime for Android package in .apk
format from here:
Once you have installed this package (please refer to Google for tips on installing .apk
packages on your device) the OpenSesame runtime will simply appear as an app.
Usage
When you start the OpenSesame runtime, you will be asked where your experiments are located. By default, OpenSesame assumes that they are in the /sdcard/
folder, or (if it exists) in the /sdcard/Experiments/
folder. If you have no experiments on your device, pressing enter
will show the example experiments that are bundled with the .apk
.
The Back
button serves the same purpose as the Escape
key on regular systems, and will exit OpenSesame.
Supported devices
If you have tested the OpenSesame runtime for Android on a device, please share your experiences. OpenSesame is developed with the Nexus 4 and 9 as reference devices. In general, any device that runs Android 2.2. ‘Froyo’ or later appears to work.
Disabling automatic updates
If you are using the OpenSesame runtime for Android in a production environment (e.g., while you are running an experiment), it is recommended to disable the Auto-update feature of the Google Play Store, at least for OpenSesame. This will prevent the app from being updated and potentially changing its behavior.
Automatically start an experiment
If you want to directly launch a specific experiment when the OpenSesame runtime for Android is started, you can create a file called opensesame-autorun.yml
in the /sdcard/
folder of your device. This is a YAML file with the following structure:
experiment: /sdcard/experiments/my_experiment.opensesame
subject_nr: 3
logfile: /sdcard/data/subject03.csv
Developing experiments for Android
Back-end
The OpenSesame runtime for Android requires the droid back-end, which is available as of OpenSesame 0.27.2.
Design tips
Implement most user interactions through the mouse_response
item or touch_response
plug-in. In general, screen touches are registered as mouse clicks. Using keyboard input will work as well, but it will show and hide the virtual keyboard after every key that is entered, which looks a bit messy.
The resolution for the droid
backend is fixed at 1280x800. On Android, your experiment will be automatically scaled up or down depending on the resolution of the device, but the resolution that you design with is always 1280x800.
Available Python modules
The OpenSesame runtime for Android is based on the PyGame subset 4 Android. A list of available Python modules can be found here:
Debugging
Debug output is written to /sdcard/opensesame-debug.txt
.
Limitations
- The synth item and
openexp.synth
module are not functional. - The sampler item and
openexp.sampler
module will ignore panning and pitching. - Participants may be eaten by dragons.
Know issue: Frozen or misbehaving virtual keyboard
On some devices, the default virtual keyboard is unresponsive (i.e. it shows but doesn’t respond to taps) or doesn’t respond normally. This appears to happen on phones with recent versions of Android. To work around this issue, you can install a third-party keyboard. Keyboards that have been reported to work are:
Forum topics
A general forum topic on the OpenSesame runtime for Android:
Eoin Traver’s project to test the OpenSesame runtime for Android (call for testers):