Knoppia

Wiki de Informática y otras historias

Herramientas de usuario

Herramientas del sitio


Barra lateral

Proyecto Integral de Ingeniería del Software
Metodologías Ágiles
Trabajo Fin De Grado
Guía Memoria TFG

Colecciones

Otros

kotlin:sensores

Sensores

En donde ponga TIPO_DE_SENSOR debemos indicar el sensor del que queramos obtener la información

 
//Mucho ojo, tenemos que poner un listener para el sensor
class Luz : AppCompatActivity(), SensorEventListener {
 
    //Dependencias para sensores:
    private lateinit var sensorManager: SensorManager
    private var detectarSensor: Sensor? = null
    private lateinit var salidaTextView: TextView
 
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_luz)
 
        //variables sensor a utilizar
        salidaTextView = findViewById(R.id.TextViewDeActivity)//tomamos el texto que mostrará la salida del sensor
        sensorManager = getSystemService(SENSOR_SERVICE) as SensorManager // Tomamos el gestor de sensores
        detectarSensor = sensorManager.getDefaultSensor(Sensor.TIPO_DE_SENSOR)//tomamos el sensor 
 
        if(detectarSensor == null){//en caso de que no se localice el sensor
            salidaTextView.text = "No Disponible"
            return
        }
 
        sensorManager.registerListener(this, detectarSensor, 200000)
 
    }
 
    override fun onAccuracyChanged(sensor: Sensor?, accuracy: Int) {
        //
    }
 
    override fun onSensorChanged(event: SensorEvent?) {
        if (event != null) {
            if(event.sensor.type == Sensor.TIPO_DE_SENSOR){
                val salSensor = event?.values?.get(0)
                salidaTextView.setText(salSensor.toString())
 
            }
        }
    }
 
    override fun onPause() {
        super.onPause()
        sensorManager.unregisterListener(this)
 
    }
 
    override fun onResume() {
        super.onResume()
        detectarSensor?.also {datosensor ->
            sensorManager.registerListener(this, datosensor, SensorManager.SENSOR_DELAY_NORMAL)
        }
    }
 
 
 
 
}
kotlin/sensores.txt · Última modificación: 2023/11/23 11:09 por thejuanvisu