metzelder
metzelder

Reputation: 734

Stopping Sensor from another Thread

I want to stop Sensor manager activity (unregister it) from another Thread or class after some operations to be performed. How can I do that?

Upvotes: 0

Views: 251

Answers (1)

Ajay S
Ajay S

Reputation: 48602

Look Here. It might help you.

ShakeListener.java

Made Instance variable in ShakeListener class.
private Sensor accelerometer;
SensorManager sensorManager;

public ShakeListener(Context context) {
    sensorManager = (SensorManager)this.context.getSystemService(Context.SENSOR_SERVICE);
    accelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
    sensorManager.registerListener(this, accelerometer, SensorManager.SENSOR_DELAY_NORMAL);
}

To unregister from another thread or class.

Do this:

private ShakeListener shakeListener;  //Instance variable
shakeListener = new ShakeListener(this);
shakeListener.sensorManager.unregisterListener(shakeListener, shakeListener.sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER));

Upvotes: 1

Related Questions