Android Open Source - AndroidLibraryProject Accelerometer Data Listener






From Project

Back to project page AndroidLibraryProject.

License

The source code is released under:

Apache License

If you think the Android project AndroidLibraryProject listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/* 
 * Copyright (c) 2013 by CDAC Chennai //  ww w  . jav  a  2s  .co  m
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * @File        AccelerometerDataListener
 * @Created:    20.11.2013
 * @author:     Prasenjit
 * Last Change: 22.08.2014 by Prasenjit
 */

package com.contextawareframework.backgroundservices;

import com.contextawareframework.globalvariable.CAFConfig;

import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.provider.Settings.Global;
import android.util.Log;
import android.widget.Toast;


/**
 * Description : To register / un-register Accelerometer Sensor. To make it as service mention
 *          the package name inside service tag of your Android manifest file
 */
public class AccelerometerDataListener extends CAFService {

  /** Android SensorManager object to work with sensors. This variable is not 
   * exposed to user.
   * */
  private SensorManager mSensorManager;

  /* Local variable to select the type of sensor.*/
  private Sensor mAccelerometer;

  /* Local variable to store the context of the calling activity.*/
  private Context mContext = null ;

  /* Local variable to store the SensorEventListener from the calling / implementing Activity. */
  private SensorEventListener listener;

  /* Tag for debugging the class */
  private final String TAG = "AccelerometerDataListener";

  /* To enable / disable Log messages. */
  private static boolean enableDebugging = CAFConfig.isEnableDebugging(); 

  /* Class variable */
  private static AccelerometerDataListener accelDataListenerInstance;

  /**
   * Method to enable debugging
   * @param boolean
   */
  public void setEnableDebugging(boolean value)
  {
    enableDebugging = value;
  }

  /**
   * Method to get the present value of enableDebugging
   * @return boolean
   */
  public boolean getEnableDebugging()
  {
    return enableDebugging;
  }

  /**
   * Description : Private constructor. Singleton Pattern to create the class object
   * @param context Calling Activity context
   */
  private AccelerometerDataListener(Context context)
  {
    mContext = context;
  }

  /**
   * Description : Method to create an instance of AccelerometerDataListener Class.
   * @param context Calling Activity context
   * @return AccelerometerDataListener Class instance
   */
  public static synchronized AccelerometerDataListener getInstance(Context context)
  {
    if (accelDataListenerInstance == null)
      accelDataListenerInstance = new AccelerometerDataListener(context);

    return accelDataListenerInstance;
  }

  /**
   * Method to enable Accelerometer Sensor in Android
   * @param listenerFromActiity : User has to implement the SensorEventListener and pass it 
   *                   to the calling method
   */
  public void enableAccelerometerListener(SensorEventListener listenerFromActivity,int sampleRate)
  {
    if(listenerFromActivity!=null)
    {  
      listener = listenerFromActivity;
    }
    else      
    {  
      if(enableDebugging)
      {
        Log.d(TAG,"enableAccelerometer Method");
        Log.d(TAG,"listenerFromActivity is null");
      }

    }
    mSensorManager = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE);
    if(mSensorManager == null)
    {
      if(enableDebugging)
      {
        Log.d(TAG,"Accelerometer Sensor Found");
        Toast.makeText(this,"No Accelerometer Sensor found! quit-",Toast.LENGTH_SHORT).show();
      }
    }
    else
    {
      if(enableDebugging)
      {
        Log.d(TAG,"Accelerometer Sensor Found, else part");
        Toast.makeText(mContext,"Accelerometer Sensor found",Toast.LENGTH_SHORT).show();
      }
      try
      {
        mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
        mSensorManager.registerListener(listener, mAccelerometer , sampleRate);
      }
      catch(Exception e)
      {
        e.printStackTrace();
      }
    }
  }

  /**
   * Method to enable disable Accelerometer Sensor in Android
   */
  public void disableAccelerometerListener(SensorEventListener listenerFromActivity)
  {  
    try
    {
      if(listenerFromActivity!=null)
        mSensorManager.unregisterListener(listenerFromActivity);
      else
      {
        if(enableDebugging)
          Log.d(TAG,"listenerFromActivity is null");
      }
    }
    catch(NullPointerException e)
    {
      e.printStackTrace();
    }
  }

}




Java Source Code List

.BatteryDbHelper.java
.Bluetooth.java
.Camera.java
.Gravity.java
.Humidity.java
.Microphone.java
.NFC.java
.Orientation.java
.Pressure.java
.SDCard.java
.Telephony.java
.Temparature.java
.USB.java
.Wifi.java
com.contextawareframework.backgroundservices.AccelerometerDataListener.java
com.contextawareframework.backgroundservices.BatteryDataService.java
com.contextawareframework.backgroundservices.CAFService.java
com.contextawareframework.backgroundservices.GPSTracker.java
com.contextawareframework.backgroundservices.GyroscopeDataListener.java
com.contextawareframework.backgroundservices.LightDataListener.java
com.contextawareframework.backgroundservices.LocationDataListener.java
com.contextawareframework.backgroundservices.MagnetometerDataListener.java
com.contextawareframework.backgroundservices.ProximityDataListener.java
com.contextawareframework.backgroundservices.SoundRecorder.java
com.contextawareframework.backgroundservices.Text2Speech.java
com.contextawareframework.contextawarefunctions.ContextAwareFunction.java
com.contextawareframework.controller.BatteryController.java
com.contextawareframework.controller.SensorController.java
com.contextawareframework.dataanalysis.AccelerometerDataAnalysis.java
com.contextawareframework.dataanalysis.ApplicationDataAnalysis.java
com.contextawareframework.dataanalysis.LocationDataAnalysis.java
com.contextawareframework.dbmanager.AccelerometerDbHelper.java
com.contextawareframework.dbmanager.ContextAwareSQLiteHelper.java
com.contextawareframework.dbmanager.GyroscopeDbHelper.java
com.contextawareframework.dbmanager.LightDbHelper.java
com.contextawareframework.dbmanager.LocationDbHelper.java
com.contextawareframework.dbmanager.MagnetometerDbHelper.java
com.contextawareframework.dbmanager.ProximityDbHelper.java
com.contextawareframework.dbmanager.UserInfoDbHelper.java
com.contextawareframework.exceptions.AccelerometerSensorException.java
com.contextawareframework.exceptions.BatteryException.java
com.contextawareframework.exceptions.CAFException.java
com.contextawareframework.exceptions.GyrometerSensorException.java
com.contextawareframework.exceptions.LightSensorException.java
com.contextawareframework.exceptions.LocationServiceException.java
com.contextawareframework.exceptions.MagnetometerSensorException.java
com.contextawareframework.exceptions.ProximitySensorException.java
com.contextawareframework.exceptions.SDCardException.java
com.contextawareframework.exceptions.SQLiteQueryException.java
com.contextawareframework.exceptions.SensorException.java
com.contextawareframework.globalvariable.CAFConfig.java
com.contextawareframework.notificationservice.IssueNotification.java
com.contextawareframework.os.Battery.java
com.contextawareframework.os.CAFPowerManager.java
com.contextawareframework.os.UserInfo.java
com.contextawareframework.probe.Probe.java
com.contextawareframework.probe.WfiProbe.java
com.contextawareframework.querymodule.BaseQueryClass.java
com.contextawareframework.querymodule.DeveloperInfo.java
com.contextawareframework.querymodule.UserIdentification.java
com.contextawareframework.security.FileEncryptor.java
com.contextawareframework.security.JavaDESEncryption.java
com.contextawareframework.sensorlistener.BatteryListener.java
com.contextawareframework.sensorlistener.SensorListener.java
com.contextawareframework.sensors.environmentsensors.Light.java
com.contextawareframework.sensors.motionsensors.Accelerometer.java
com.contextawareframework.sensors.motionsensors.Gyrometer.java
com.contextawareframework.sensors.positionsensors.LocationPojo.java
com.contextawareframework.sensors.positionsensors.Magnetometer.java
com.contextawareframework.sensors.positionsensors.Proximity.java
com.contextawareframework.uploadmanager.BackupDb.java
com.contextawareframework.uploadmanager.UploadScheduler.java
com.contextawareframework.uploadmanager.UploadToServer.java
com.contextawareframework.utility.CsvFileWriter.java
com.example.frameworktestcase.FrameworkFunctionalTestActivity.java
com.example.frameworktestcase.MainActivity.java
com.example.frameworktestcase.SecondActivity.java
com.example.frameworktestcase.Singleton.java