Lista dei sensori in un dispositivo

Nel dicembre 2012 scrissi un articolo su un’app che mostrava l’elenco dei sensori in un dispositivo android, ora a distanza di circa un anno e mezzo le API 19 mettono a disposizione nuovi tipi di sensori e metodi e ho pensato di aggiornare l’app.

Le principali modifiche sono state fatte alla classe MySensor:

Anche il layout è stato modificato per mostrare i valori dei campi fifoMaxEventCount e fifoReservedEventCount, puoi scaricare tutti i file dell’app qui.

Questo è l’elenco dei nuovi tipi di sensori:

  • TYPE_GAME_ROTATION_VECTOR
  • TYPE_GEOMAGNETIC_ROTATION_VECTOR
  • TYPE_GYROSCOPE_UNCALIBRATED
  • TYPE_SIGNIFICANT_MOTION
  • TYPE_STEP_COUNTER
  • TYPE_STEP_DETECTOR

Trovo particolarmente interessante TYPE_GAME_ROTATION_VECTOR che è simile a TYPE_ROTATION_VECTOR perchè non utilizza il magnetometro ma solo l’accelerometro per restituire il vettore rotazione.
In questo modo non è possibile ottenere l’orientamento del dispositivo rispetto a un sistema di riferimento solidale con la Terra ma ha il vantaggio di essere più preciso, in altre parole sai di quanto il dispositivo è ruotato ma non puoi sapere l’orientamento rispetto al nord magnetico.

Sono stati aggiunti anche questi metodi nella classe Sensor con API 19:

  • public int getFifoMaxEventCount()
  • public int getFifoReservedEventCount()

che nel caso del Nexus 5 sono sempre diversi da zero tranne che per TYPE_SIGNIFICANT_MOTION, quindi la modalità batch è quasi sempre supportata.

sensorlist_nexus5

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.