Cómo obtener la lista de los sensores (sensor) que apoyan
Android, cómo obtener la lista de (sensor) Sensor que son apoyados por el equipo actual?
¿Cómo conseguir aplicaciones del sensor de Android, que el apoyo, haga lo siguiente.
Obtiene el SensorManager primera instancia.
SensorManager SM = (SensorManager) getSystemService (SENSOR_SERVICE);
El siguiente paso es, provisionalmente, tengo dos caminos, uno se convierte (en desuso) Desaprobado.
Pero no se limita a Android, por ejemplo, en general, Java, básicamente, de la API se considera obsoleta y se asegurará de que usted no utilice.
El primer paso es introducir a partir de los métodos intencionalmente en desuso.
Utilice el botón () SensorManager.getSensors.
int = Sensor de sm.getSensors ();
El valor de retorno es de tipo int.
El valor de retorno, el valor de un bit de estado del pabellón de pie correspondiente a cada sensor que el apoyo será devuelto.
Por ejemplo, si hay un sensor de orientación se mide por una expresión como la siguiente decisión.
if ((sensor y SensorManager.SENSOR_ORIENTATION)! = 0) {
/ / Si esta sentencia if, sensor de orientación son compatibles
}
La razón por el método anterior ha quedado en desuso, pero no sé, en comparación con lo que se introdujo más tarde, y creo que no lo hago muy buena facilidad de uso.
El siguiente es el método recomendado. Hay un sentido en comparación con la versión no recomendado, era mirada como una más orientada a objetos.
Utilice el botón () SensorManager.getSensorList.
Lista <sensor> list = sm.getSensorList (Sensor.TYPE_ALL);
El valor de retorno es del sensor de tipo de lista.
El argumento, debe especificar el sensor que desea obtener, si usted desea conseguir el sensor de todo lo que el apoyo, especificar el Sensor.TYPE_ALL como se describió anteriormente.
Lista de la siguiente manera: Cuando el valor de retorno, se puede determinar si lo que el sensor es compatible.
para la (s Sensor: lista) {
/ / Por ejemplo, poner un registro el nombre del sensor
Log.i (s.getName ());
/ / Por ejemplo, para registrar el tipo de problema del sensor
Log.i (s.getType ());
}
() Devuelven un valor, pero ese es el tipo de sensor getType.
Por ejemplo, si un sensor indica el sensor de orientación, TYPE_ORIENTATION se devuelve.
Si desea utilizar el sensor, también me registra el detector del sensor.
Desde entonces, la forma en que los patrones y en desuso por encima, he aquí el patrón recomendado.
Si la primera está en desuso.
Utilice el botón () SensorManager.registerListener.
Si usted desea registrar todos los sensores son compatibles, por ejemplo, es algo como lo siguiente.
int = Sensor de sm.getSensors ();
sm.registerListener (este sensor,);
El primer argumento especifica la instancia que implementa el SensorListener.
El segundo argumento es el valor de la suma de poco el sensor que desea registrar.
En realidad, esta interfaz SensorListener se llamó, se considera obsoleta.
ha quedado en desuso registerListener (), y también el uso de esta.
La siguiente es la forma recomendada.
Se usará el () SensorManager.registerListener, y el argumento anterior es diferente.
Si usted desea registrar todos los sensores son compatibles, por ejemplo, es algo como lo siguiente.
Lista <sensor> list = sm.getSensorList (Sensor.TYPE_ALL);
para la (s Sensor: lista) {
sm.registerListener (esto, s);
}
El primer argumento, en lugar de SensorListener, será una instancia que implementa el SensorEventListener.
El segundo argumento especifica la instancia de tipo de sensor que se registró.
El evento será notificado por () onSensorChanged de una instancia que implementa el SensorEventListener.
A partir de los argumentos, puede obtener una instancia de la SensorEvent tipo.
Así que esta vez, tenemos hasta aquí, con ocasión de otro, con respecto a la gestión de eventos.
En este artículo, cuando me entero de cómo obtener una lista de sensor anterior (), que había sido por el (obsoleto), se examinaron de la referencia de la API está en desuso SensorManager.getSensors.
El código de ejemplo que se ha publicado en libros y en la red, puede haber estado bien con el (obsoleto) obsoleta a partir de este momento.
En ese momento, si nos fijamos en la referencia de API para el Android, ahora lo que se ha recomendado que la API? Por favor, consulte tan fácil de ver eso.
La referencia de la API que viene con el SDK de Android, y ver el () SensorManager.getSensors en desuso, ha sido descrito de la siguiente manera.
Esto, y lo sabes! "¿Por qué debo usar (Sensor.TYPE_ALL) getSensorList".
Dicho sea de paso, el tratamiento de referencia de la API Ali, consulte los artículos siguientes.
La ubicación de la referencia Android API











