programacion - ¿Cómo puedo simular el acelerómetro en el emulador de Android?
giroscopio android studio (5)
El emulador de Android no lo soporta, pero el SensorSimulator de SensorSimulator llena el vacío. Descargue y descomprima el archivo zip, luego inicie el archivo jar independiente:
$ java -jar bin/sensorsimulator.jar
Luego, instale SensorSimulatorSettings en el emulador usando la herramienta adb que viene con el SDK:
$ adb -s <emulator device> install bin/SensorSimulatorSettings.apk
(ejecuta dispositivos adb para encontrar el nombre del dispositivo emulador). Finalmente, ejecute la aplicación SensorSimulatorSettings instalada en el emulador e ingrese la dirección IP 10.0.2.2 (a pesar de lo que pueda sugerir la aplicación SensorSimulator. Este es un alias del dispositivo de bucle invertido del host de desarrollo, por lo que siempre debe ser válido.
No tengo un teléfono Android en este momento. Pero en mi aplicación necesito usar los valores del acelerómetro. ¿Cómo puedo hacer esto en un entorno simulado?
Experimenté que el emulador para el objetivo 10 no es compatible con el acelerómetro, pero sí lo es con el objetivo 15. No sé si hay una manera de hacerlo para el objetivo 10. Entonces, para probar su aplicación, cree su proyecto y AVD para el objetivo 15.
La versión más reciente del emulador viene habilitada con Accelerometer y otro soporte de simulación de sensores. Uno puede telnet localhost 5554
:
Probando 127.0.0.1 ...
Conectado a localhost.
El carácter de escape es ''^]''.
Consola Android: escribe ''ayuda'' para obtener una lista de comandos
DE ACUERDOsensor
le permite solicitar los sensores del emuladorsubcomandos disponibles:
estado enumera todos los sensores y su estado.
obtener los valores del sensor
establecer los valores del sensorKO: comando secundario faltante
estado del sensor
aceleración: habilitada.
campo magnético: habilitado.
orientación: habilitada.
temperatura: habilitada.
proximidad: habilitada.
DE ACUERDO
Cómo exactamente simular un batido, no lo sé. Intente enviar estos dos comandos uno tras otro rápidamente:
sensor set acceleration 0:0:0
sensor set acceleration 99:99:99
También estaba intentando hacer funcionar SensorSimulator y creo que finalmente lo conseguí.
Los pasos anteriores: "... java -jar bin / sensorsimulator.jar
A continuación, instale SensorSimulatorSettings en el emulador usando la herramienta adb que viene con el SDK: $ adb -s install bin / SensorSimulatorSettings.apk
... Finalmente, ejecute la aplicación SensorSimulatorSettings instalada en el emulador e ingrese la dirección IP 10.0.2.2 ... "
son un buen comienzo, pero necesitaba hacer más.
Al parecer, necesita modificar su aplicación para usar SensorSimulator. Puede ir a SensorSimulator y desplazarse hacia abajo a la sección "Cómo usar el SensorSimulator en su aplicación".
Incluso entonces obtuve algunos errores al compilar, por lo que es posible que desee ver esta página: componente del termómetro Vintage + SensorSimulator en el emulador de Android : tuve que eliminar las referencias a android.hardware.Sensor, SensorEvent y SensorEventListener.
Y luego estaba fallando en la llamada a connectSimulator. Aparentemente, necesitaba dar permiso a mi aplicación para usar Internet en el archivo de manifiesto.
Después de todo eso, puedo usar SensorSimulator para rotar virtualmente mi teléfono y obtengo las lecturas de sensor correspondientes en mi aplicación.
Te sugiero que uses la aplicación Genymotion, integre una herramienta completa para la prueba del acelerómetro y utiliza un emulador más rápido: Genymotion