Smartphone Sensors and Android Overview CSECE 498 Ashutosh

  • Slides: 30
Download presentation
Smartphone Sensors and Android Overview CS/ECE 498 Ashutosh Dhekne (borrowed from Nirupam Roy)

Smartphone Sensors and Android Overview CS/ECE 498 Ashutosh Dhekne (borrowed from Nirupam Roy)

Roadmap • An overview of smartphone sensors and possible applications • Overview of Android

Roadmap • An overview of smartphone sensors and possible applications • Overview of Android architecture

Smartphone Sensors • • Accelerometer Gyroscope Magnetometer Light sensor Humidity sensor Touch screen Barometer

Smartphone Sensors • • Accelerometer Gyroscope Magnetometer Light sensor Humidity sensor Touch screen Barometer Microphone and Camera …

Smartphone Sensors: Accelerometer

Smartphone Sensors: Accelerometer

Smartphone Sensors: Accelerometer

Smartphone Sensors: Accelerometer

Smartphone Sensors: Accelerometer

Smartphone Sensors: Accelerometer

Smartphone Sensors: Accelerometer

Smartphone Sensors: Accelerometer

Smartphone Sensors: Gyroscope

Smartphone Sensors: Gyroscope

Smartphone Sensors: Gyroscope

Smartphone Sensors: Gyroscope

Smartphone Sensors: Gyroscope

Smartphone Sensors: Gyroscope

Smartphone Sensors: Magnetometer

Smartphone Sensors: Magnetometer

Smartphone Sensors: Magnetometer

Smartphone Sensors: Magnetometer

Smartphone Sensors: Magnetometer

Smartphone Sensors: Magnetometer

Smartphone Sensors: Light Sensor

Smartphone Sensors: Light Sensor

Smartphone Sensors • • Accelerometer Gyroscope Magnetometer Light sensor Humidity sensor Touch screen Barometer

Smartphone Sensors • • Accelerometer Gyroscope Magnetometer Light sensor Humidity sensor Touch screen Barometer Microphone and Camera …

Smartphone Sensors: Fusion Sensor

Smartphone Sensors: Fusion Sensor

Smartphone Sensors: Fusion Sensor

Smartphone Sensors: Fusion Sensor

Smartphone Sensors: Fusion Sensor

Smartphone Sensors: Fusion Sensor

Any question on sensors?

Any question on sensors?

Android Architecture Your Mobile App

Android Architecture Your Mobile App

Programming for Android

Programming for Android

Android Application Life-cycle

Android Application Life-cycle

Android Code to Access Sensor Data http: //developer. android. com/guide/topics/senso rs/sensors_overview. html private Sensor.

Android Code to Access Sensor Data http: //developer. android. com/guide/topics/senso rs/sensors_overview. html private Sensor. Manager sensor. Manager; . . . sensor. Manager = (Sensor. Manager) get. System. Service(Context. SENSOR_SERVICE); if (sensor. Manager. get. Default. Sensor(Sensor. TYPE_MAGNETIC_FIELD) != null){ // Success! There's a magnetometer. } else { // Failure! No magnetometer. }

Android Code to Access Sensor Data public class Sensor. Activity extends Activity implements Sensor.

Android Code to Access Sensor Data public class Sensor. Activity extends Activity implements Sensor. Event. Listener { private Sensor. Manager sensor. Manager; private Sensor m. Light; @Override public final void on. Create(Bundle saved. Instance. State) { super. on. Create(saved. Instance. State); set. Content. View(R. layout. main); sensor. Manager = (Sensor. Manager) get. System. Service(Context. SENSOR_SERVICE); m. Light = sensor. Manager. get. Default. Sensor(Sensor. TYPE_LIGHT); } @Override public final void on. Accuracy. Changed(Sensor sensor, int accuracy) { // Do something here if sensor accuracy changes. } @Override public final void on. Sensor. Changed(Sensor. Event event) { // The light sensor returns a single value. // Many sensors return 3 values, one for each axis. float lux = event. values[0]; // Do something with this sensor value. } Reading Values @Override protected void on. Resume() { super. on. Resume(); sensor. Manager. register. Listener(this, m. Light, Sensor. Manager. SENSOR_DELAY_NORMAL); } @Override protected void on. Pause() { super. on. Pause(); sensor. Manager. unregister. Listener(this); } } How often do you want updates?

Android Code to Access Sensor Data Main Activity The main computing codes Most of

Android Code to Access Sensor Data Main Activity The main computing codes Most of your code will be here XML file Android Manifest file Code for organizing the UI The application meta-data Get all needed permissions

Asking for Permissions • Reading or writing might need permissions from the user. <manifest.

Asking for Permissions • Reading or writing might need permissions from the user. <manifest. . . > <uses-permission android: name="android. permission. WRITE_EXTERNAL_STORAGE" /> . . . </manifest> https: //developer. android. com/training/datastorage/files#External. Storage. Permissions

Become a Developer http: //www. imagezap. org/how-to-enable-developer-mode-on-android/

Become a Developer http: //www. imagezap. org/how-to-enable-developer-mode-on-android/

Keep collecting data when not on your activity

Keep collecting data when not on your activity