Skip to content Skip to sidebar Skip to footer

How To Set Delay Of Android Sensors Programmatically?

If there any method to change delay of andriod sensor other using constant like 'Normal_Delay, ...'. I want to put the delay value as I like. if this is possible ? Actually, I fou

Solution 1:

Finally, I created a solution to solve this problem and it works perfect with me by using clarification of This now you can set custom delay for your android sensors..!

Implement it as following:

package com.example.android.location;

publicclassSensorextendsActivityimplementsSensorEventListener {
Handler handler;
int interval= 1000; // read sensor data each 1000 msbooleanflag=false;
booleanisHandlerLive=false;
private Sensor mGravity;
private SensorManager mSensorManager;

privatefinalRunnableprocessSensors=newRunnable() {
    @Overridepublicvoidrun() {
        // Do work with the sensor values.

        flag = true;
        // The Runnable is posted to run again here:
        handler.postDelayed(this, interval);
    }
};

@OverrideprotectedvoidonCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // you can initialize this wherever you want...
    handler = newHandler();
    mSensorManager = (SensorManager) getApplication().getSystemService(
            Context.SENSOR_SERVICE);
    mGravity = mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY);
}

@OverridepublicvoidonResume() {
    super.onResume();
    mSensorManager.registerListener(this, mGravity,
            SensorManager.SENSOR_DELAY_NORMAL);

    handler.post(processSensors);
}

@OverridepublicvoidonPause() {
    handler.removeCallbacks(processSensors);

    super.onPause();
}

@OverridepublicvoidonSensorChanged(SensorEvent event) {
    if (flag) {
        // TODO Auto-generated method stub// Update UI for one reading every one second...
        Log.d("Sensor Data of X", event.values[0] + "");
        Log.d("Sensor Data of Y", event.values[1] + "");
        Log.d("Sensor Data of Z", event.values[2] + "");

        //
        flag = false;
    }

}

@OverridepublicvoidonAccuracyChanged(android.hardware.Sensor arg0, int arg1) {
    // TODO Auto-generated method stub

}

}

Enjoy :D

Post a Comment for "How To Set Delay Of Android Sensors Programmatically?"