Android Sensors. XI Jornadas SLCENT de Actualización Informática y Electrónica
|
|
- Dorcas Thompson
- 8 years ago
- Views:
Transcription
1 Android Sensors XI Jornadas SLCENT de Actualización Informática y Electrónica
2 About me José Juan Sánchez Hernández Android Developer (In my spare time :) Member and collaborator of: - Android Almería Developer Group - HackLab 2
3 What is a sensor? 3
4 Microelectromechanical sensors (MEMS) MEMS are sensors that have been made on a tiny scale, usually on silicon chips using techniques borrowed from computer-chip manufacturing. 4
5 What are Android Sensors? Android sensors give applications access to a mobile device's underlying physical sensors: accelerometers, gyroscopes, magnetometers, barometer, humidity, pressure, light, proximity and heart rate sensors. Camera, microphone and touch screen are currently not in the list of physical devices providing data through Android sensors. They have their own reporting mechanism. 5
6 Sensor stack Layers of the Android sensor stack and their respective owners 6
7 SDK Applications access sensors through the Sensors SDK (Software Development Kit) API. The SDK contains functions to list available sensors and to register to a sensor. 7
8 Framework The framework is in charge of linking the several applications to the HAL. The HAL itself is single-client. Without this multiplexing happening at the framework level, only a single application could access each sensor at any given time. 8
9 HAL (Hardware Abstraction Layer) The Sensors Hardware Abstraction Layer (HAL) API is the interface between the hardware drivers and the Android framework. It consists of one HAL interface sensors.h and one HAL implementation we refer to as sensors.cpp. 9
10 HAL / sensors.h Let s see the code 10
11 Kernel driver The sensor drivers interact with the physical devices. In some cases, the HAL implementation (sensors.cpp) and the drivers are the same software entity. HAL implementation and kernel drivers are the responsibility of the hardware manufacturers, and Android does not provide preferred approaches to write them. 11
12 Sensor hub The sensor stack of a device can optionally include a sensor hub, useful to perform some low-level computation at low power while the SoC (System on Chip) can be in a suspend mode. It is sometimes a separate chip, and sometimes included on the same chip as the SoC. Important characteristics of the sensor hub is that it should contain sufficient memory for batching and consume very little power to enable implementation of the low power Android sensors. 12
13 Source: 13
14 Sensors Those are the physical MEMs chips making the measurements. In many cases, several physical sensors are present on the same chip. For example, some chips include an accelerometer, a gyroscope and a magnetometer. Such chips are often called 9-axis chips, as each sensor provides data over 3 axes. 14
15 What is Batching? Batching refers to storing sensor events in a hardware FIFO before reporting them through the HAL instead of reporting them immediately. Batching can enable significant power savings by preventing the SoC from waking up to receive each event. Instead, the events can be grouped and processed together. Android 4.4 (KitKat) introduced platform support for hardware sensor batching. 15
16 classification 1 Types of Sensors The Android platform supports three broad categories of sensors: Motion sensors: These sensors measure acceleration forces and rotational forces along three axes. This category includes accelerometers, gravity sensors, gyroscopes and rotational vector sensors. Environmental sensors: These sensors measure various environmental parameters, such as ambient air temperature and pressure, illumination, and humidity. This category includes barometers, photometers and thermometers. Position sensors: These sensors measure the physical position of a device. This category includes orientation sensors and magnetometers. 16
17 Raw and Composite Sensors classification 2 Raw sensors (hardware-based): give raw data from a sensor, and one raw sensor corresponds to one actual physical component inside the Android device. Composite sensors (software-based): provide an abstraction layer between application code and low-level device components by either combining the raw data of multiple raw sensors, or by modifying the raw sensor data to make it easier to consume. 17
18 Sensor types supported by the Android platform Sensor Type Description Common Uses TYPE_ACCELEROMETER Hardware Measures the acceleration force in m/s is applied to a device on all three physical axes (x, y, and z), including the force of gravity. TYPE_AMBIENT_TEMPERATURE Hardware Measures the ambient room temperature in degrees Celsius ( C). See note below. Motion detection (shake, tilt, etc.). Monitoring air temperatures. TYPE_GRAVITY Software or Hardware Measures the force of gravity in m/s applied to a device on all three physical axes (x, y, z). Motion detection (shake, tilt, etc.). TYPE_GYROSCOPE Hardware Measures a device's rate of rotation in rad/s around each of the three physical axes (x, y, and z). TYPE_LIGHT Hardware Measures the ambient light level (illumination) in lx. TYPE_LINEAR_ACCELERATION Software or Hardware Measures the acceleration force in m/s is applied to a device on all three physical axes (x, y, and z), excluding the force of gravity. Rotation detection (spin, turn, etc.). Controlling screen brightness. Monitoring acceleration along a single axis. Source: 18
19 Sensor Type Description Common Uses TYPE_MAGNETIC_FIELD Hardware Measures the ambient geomagnetic field for all three physical axes (x, y, z) in μt. Creating a compass. TYPE_ORIENTATION Software Measures degrees of rotation that a device makes around all three physical axes (x, y, z). As of API level 3 you can obtain the inclination matrix and rotation matrix for a device by using the gravity sensor and the geomagnetic field sensor in conjunction with the getrotationmatrix() method. TYPE_PRESSURE Hardware Measures the ambient air pressure in hpa or mbar. TYPE_PROXIMITY Hardware Measures the proximity of an object in cm relative to the view screen of a device. This sensor is typically used to determine whether a handset is being held up to a person's ear. TYPE_RELATIVE_HUMIDITY Hardware Measures the relative ambient humidity in percent (%). Determining device position. Monitoring air pressure changes. Phone position during a call. Monitoring dewpoint, absolute, and relative 19
20 Sensor Type Description Common Uses TYPE_ROTATION_VECTOR Software or Hardware Measures the orientation of a device by providing the three elements of the device's rotation vector. Motion detection and rotation detection. TYPE_TEMPERATURE Hardware Measures the temperature of the device in degrees Celsius ( C). This sensor implementation varies across devices and this sensor was replaced with the TYPE_AMBIENT_TEMPERATURE sensor in API Level 14 Monitoring temperatures. 20
21 Sensor Android 4.0 (API Level 14) Sensor availability by platform Android 2.3 (API Level 9) Android 2.2 (API Level 8) TYPE_ACCELEROMETER Yes Yes Yes Yes TYPE_AMBIENT_TEMPERATURE Yes n/a n/a n/a TYPE_GRAVITY Yes Yes n/a n/a TYPE_GYROSCOPE Yes Yes n/a n/a TYPE_LIGHT Yes Yes Yes Yes TYPE_LINEAR_ACCELERATION Yes Yes n/a n/a TYPE_MAGNETIC_FIELD Yes Yes Yes Yes TYPE_ORIENTATION Yes Yes Yes Yes TYPE_PRESSURE Yes Yes n/a n/a TYPE_PROXIMITY Yes Yes Yes Yes TYPE_RELATIVE_HUMIDITY Yes n/a n/a n/a TYPE_ROTATION_VECTOR Yes Yes n/a n/a TYPE_TEMPERATURE Yes Yes Yes Yes Android 1.5 (API Level 3) 1 This sensor type was added in Android 1.5 (API Level 3), but it was not available for use until Android 2.3 (API Level 9). 2 This sensor is available, but it has been deprecated. 21
22 Android 4.1.x (Jellybean): New sensor types allow apps to better manage sensor readings. A game rotation vector lets game developers sense the device s rotation without having to worry about magnetic interference. Uncalibrated gyroscope and uncalibrated magnetometer sensors report raw measurements as well as estimated biases to apps. Android 4.4 (KitKat): Introduces platform support for hardware sensor batching, a new optimization that can dramatically reduce power consumed by ongoing sensor activities. Adds platform support for two new composite sensors: step detector and step counter. Android 5.0 (Lollipop): A new tilt detector and a heart rate sensor reports the heart rate of the person touching the device. New interaction composite sensors are now available to detect special interactions such as a wake up gesture, a pick up gesture, and a glance gesture. 22
23 Sensors SDK API SensorManager Is the Android system service that gives an app access to hardware sensors. Sensor Is the Android representation of a hardware sensor on a device. SensorEventListener Is an interface that provides the callbacks to alert an app to sensorrelated events. SensorEvent Is the data structure that contains the information that is passed to an app when a hardware sensor has information to report. 23
24 SensorManager SensorManager lets you access the device's sensors. Get an instance of this class by calling getsystemservice() with the argument SENSOR_SERVICE. private SensorManager msensormanager;... msensormanager = (SensorManager) getsystemservice(context.sensor_service); 24
25 SensorManager SensorManager provides two methods to access Sensor objects: getsensorlist(): returns all the sensors. getdefaultsensor(): returns the default sensor for the specified type. Example 1: List<Sensor> devicesensors = msensormanager.getsensorlist(sensor.type_all); Example 2: List<Sensor> devicesensors = msensormanager.getsensorlist(sensor.type_accelerometer); 25
26 SensorManager Example 3: private SensorManager msensormanager;... msensormanager = (SensorManager) getsystemservice(context.sensor_service); if (msensormanager.getdefaultsensor(sensor.type_magnetic_field) = null){ // Success There's a magnetometer. } else { // Failure No magnetometer. } 26
27 Sensor Sensor represents a hardware sensor on a device. This class provides information about the sensor, such as: Maximum range Minimum delay Name Power Resolution Type Vendor Version Source code: Sensor.java 27
28 SensorEventListener SensorEventListener is used for receiving notifications from the SensorManager when sensor values have changed. In this class there are two public methods: onaccuracychanged(sensor sensor, int accuracy) Called when the accuracy of a sensor has changed. onsensorchanged(sensorevent event) Called when sensor values have changed. 28
29 Example: public class SensorActivity extends Activity implements SensorEventListener { private SensorManager msensormanager; private Sensor public final void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); msensormanager = (SensorManager) getsystemservice(context.sensor_service); mlight = msensormanager.getdefaultsensor(sensor.type_light); public final void onaccuracychanged(sensor sensor, int accuracy) { // Do something here if sensor accuracy changes. public final void onsensorchanged(sensorevent 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. } 29
30 Sensor protected void onresume() { super.onresume(); msensormanager.registerlistener(this, mlight, SensorManager.SENSOR_DELAY_NORMAL); protected void onpause() { super.onpause(); msensormanager.unregisterlistener(this); } } 30
31 Sensor Rates When you register a listener, you specify the delay or measurement rate for the listener. The predefined rates are: SENSOR_DELAY_FASTEST: get sensor data as fast as possible. (0 microsecond delay) SENSOR_DELAY_GAME: rate suitable for games. ( microseconds delay = 0.02 seconds) SENSOR_DELAY_UI: rate suitable for the user interface functions. ( microseconds delay = 0.06 seconds) SENSOR_DELAY_NORMAL: rate suitable for screen orientation changes. (The default value). ( microseconds delay = 0.2 seconds) 31
32
33 SensorEvent SensorEvent is the data structure that contains the information that is passed to an app when a hardware sensor has information to report. The data members of the SensorEvent are: accuracy: The accuracy of the event. Can have the following values: SensorManager.SENSOR_STATUS_ACCURACY_HIGH SensorManager.SENSOR_STATUS_ACCURACY_MEDIUM SensorManager.SENSOR_STATUS_ACCURACY_LOW SensorManager.SENSOR_STATUS_UNRELIABLE sensor: An instance of the Sensor class that generated the SensorEvent. timestamp: The time in milliseconds when the SensorEvent occurred. values: An array of values that represent sensor data. 33
34 Ensuring that a given sensor is present on a device Detect sensors at runtime and enable or disable application features as appropriate. private SensorManager msensormanager;... msensormanager = (SensorManager) getsystemservice(context.sensor_service); if (msensormanager.getdefaultsensor(sensor.type_pressure) = null){ // Success There's a pressure sensor. } else { // Failure No pressure sensor. } 34
35 Ensuring that a given sensor is present on a device Use Google Play filters to target devices with specific sensor configurations. <uses-feature android:name="android.hardware.sensor.accelerometer" android:required="true" /> 35
36 Sensor Coordinate System In general, the sensor framework uses a standard 3-axis coordinate system to express data values. The coordinate-system is defined relative to the screen of the phone in its default orientation. The axes are not swapped when the device's screen orientation changes. 36
37 Best Practices for Accessing and Using Sensors 1) Unregister sensor listeners Always make sure to disable sensors you don't need, especially when your activity is paused. Failing to do so can drain the battery in just a few hours. Note that the system will not disable sensors automatically when the screen turns off. private SensorManager protected void onpause() { super.onpause(); msensormanager.unregisterlistener(this); } 37
38 Best Practices for Accessing and Using Sensors 2) Don t block the onsensorchanged() method Sensor data can change at a high rate, which means the system may call the onsensorchanged(sensorevent) method quite often. As a best practice, you should do as little as possible within the onsensorchanged(sensorevent) method so you don't block it. 3) Avoid using deprecated methods or sensor types Several methods and constants have been deprecated. In particular, the TYPE_ORIENTATION sensor type has been deprecated. 38
39 Best Practices for Accessing and Using Sensors 4) Verify sensors before you use them Always verify that a sensor exists on a device before you attempt to acquire data from it. Don't assume that a sensor exists simply because it's a frequently-used sensor. 5) Choose sensor delays carefully Sensors can provide data at very high rates. Allowing the system to send extra data that you don't need wastes system resources and uses battery power. 39
40 How to use sensors 40
41 Using the Proximity Sensor Sensor Sensor event data Description Units of measure TYPE_PROXIMITY SensorEvent.values[0] Distance from object. cm The proximity sensor lets you determine how far away an object is from a device. The following code shows you how to get an instance of the default acceleration sensor: 41
42 Using the Proximity Sensor private SensorManager msensormanager; private Sensor msensor;... msensormanager = (SensorManager) getsystemservice(context.sensor_service); msensor = public final void onaccuracychanged(sensor sensor, int accuracy) { // Do something here if sensor accuracy changes. public final void onsensorchanged(sensorevent event) { float cm = event.values[0]; Most // Do proximity something sensors with this return sensor the data. absolute distance, in cm, but some } return only near and far values. Most proximity sensors return the absolute distance, in cm, but some return only near and far values. 42
43 Using the Light, Pressure, and Temperature Sensors Sensor Sensor event data Units of Data description TYPE_AMBIENT_TEMPERATURE event.values[0] measure C Ambient air TYPE_LIGHT event.values[0] lx temperature. Illuminance. TYPE_PRESSURE event.values[0] hpa or mbar Ambient air pressure. TYPE_RELATIVE_HUMIDITY event.values[0] % Ambient relative TYPE_TEMPERATURE event.values[0] C humidity. Device temperature. 1 Implementations vary from device to device. This sensor was deprecated in Android 4.0 (API Level 14). The raw data you acquire from the light, pressure, and temperature sensors usually requires no calibration, filtering, or modification, which makes them some of the easiest sensors to use. 43
44 public class SensorActivity extends Activity implements SensorEventListener { private SensorManager msensormanager; private Sensor public final void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); // Get an instance of the sensor service, and use that to get an instance of // a particular sensor. msensormanager = (SensorManager) getsystemservice(context.sensor_service); mpressure = msensormanager.getdefaultsensor(sensor.type_pressure); public final void onaccuracychanged(sensor sensor, int accuracy) { // Do something here if sensor accuracy changes. public final void onsensorchanged(sensorevent event) { float millibars_of_pressure = event.values[0]; // Do something with this sensor data. } 44
45 Using Accelerometer Sensor Sensor event data Description Units of measure TYPE_ACCELEROMETER SensorEvent.values[0] Acceleration force along the x axis (including gravity). SensorEvent.values[1] Acceleration force along the y axis (including gravity). m/s SensorEvent.values[2] Acceleration force along the z axis (including gravity). 45
46 Using Accelerometer An acceleration sensor measures the acceleration applied to the device, including the force of gravity. The following code shows you how to get an instance of the default acceleration sensor: private SensorManager msensormanager; private Sensor msensor;... msensormanager = (SensorManager) getsystemservice(context.sensor_service); msensor = msensormanager.getdefaultsensor(sensor.type_accelerometer); 46
47 Using Accelerometer The norm of <x, y, z> should be close to 0 when in free fall. 47
48 Using Accelerometer To measure the real acceleration of the device, the contribution of the force of gravity must be removed from the accelerometer data. This can be achieved by applying a high-pass filter. Conversely, a low-pass filter can be used to isolate the force of gravity. The following example shows how you can do this: 48
49 public void onsensorchanged(sensorevent event){ // In this example, alpha is calculated as t / (t + dt), // where t is the low-pass filter's time-constant and // dt is the event delivery rate. final float alpha = 0.8; // Isolate the force of gravity with the low-pass filter. gravity[0] = alpha * gravity[0] + (1 - alpha) * event.values[0]; gravity[1] = alpha * gravity[1] + (1 - alpha) * event.values[1]; gravity[2] = alpha * gravity[2] + (1 - alpha) * event.values[2]; // Remove the gravity contribution with the high-pass filter. linear_acceleration[0] = event.values[0] - gravity[0]; linear_acceleration[1] = event.values[1] - gravity[1]; linear_acceleration[2] = event.values[2] - gravity[2]; } 49
50 News Gyroscope 50
51 Good Book :) 51
52 Android Sensors XI Jornadas SLCENT de Actualización Informática y Electrónica
Android Sensors. CPRE 388 Fall 2015 Iowa State University
Android Sensors CPRE 388 Fall 2015 Iowa State University What are sensors? Sense and measure physical and ambient conditions of the device and/or environment Measure motion, touch pressure, orientation,
More informationSensors & Motion Sensors in Android platform. Minh H Dang CS286 Spring 2013
Sensors & Motion Sensors in Android platform Minh H Dang CS286 Spring 2013 Sensors The Android platform supports three categories of sensors: Motion sensors: measure acceleration forces and rotational
More informationAndroid Sensors. Mobile Applica1ons Jay Urbain, Ph.D. Credits:
Android Sensors Credits: Mobile Applica1ons Jay Urbain, Ph.D. Meier, Reto, Professional Android 4 Applica1on Development. hbp://developer.android.com/guide/topics/sensors/sensors_overview.html hbp://developer.android.com/guide/topics/sensors/sensors_overview.html
More informationAndroid Sensor Programming. Weihong Yu
Android Sensor Programming Weihong Yu Sensors Overview The Android platform is ideal for creating innovative applications through the use of sensors. These built-in sensors measure motion, orientation,
More informationANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL II)
Sensor Overview ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL II) Lecture 5: Sensor and Game Development Most Android-powered devices have built-in sensors that measure motion, orientation,
More informationUsing the Android Sensor API
Using the Android Sensor API Juan José Marrón Department of Computer Science & Engineering jmarronm@mail.usf.edu # Outline Sensors description: - Motion Sensors - Environmental Sensors - Positioning Sensors
More informationSensors. Marco Ronchetti Università degli Studi di Trento
1 Sensors Marco Ronchetti Università degli Studi di Trento Sensor categories Motion sensors measure acceleration forces and rotational forces along three axes. This category includes accelerometers, gravity
More informationCS 403X Mobile and Ubiquitous Computing Lecture 6: Maps, Sensors, Widget Catalog and Presentations Emmanuel Agu
CS 403X Mobile and Ubiquitous Computing Lecture 6: Maps, Sensors, Widget Catalog and Presentations Emmanuel Agu Using Maps Introducing MapView and Map Activity MapView: UI widget that displays maps MapActivity:
More informationAndroid Framework. How to use and extend it
Android Framework How to use and extend it Lectures 9/10 Android Security Security threats Security gates Android Security model Bound Services Complex interactions with Services Alberto Panizzo 2 Lecture
More informationELET4133: Embedded Systems. Topic 15 Sensors
ELET4133: Embedded Systems Topic 15 Sensors Agenda What is a sensor? Different types of sensors Detecting sensors Example application of the accelerometer 2 What is a sensor? Piece of hardware that collects
More information06 Team Project: Android Development Crash Course; Project Introduction
M. Kranz, P. Lindemann, A. Riener 340.301 UE Principles of Interaction, 2014S 06 Team Project: Android Development Crash Course; Project Introduction April 11, 2014 Priv.-Doz. Dipl.-Ing. Dr. Andreas Riener
More informationAndroid. Learning Android Marko Gargenta. Tuesday, March 11, 14
Android Learning Android Marko Gargenta Materials Sams Teach Yourself Android Application Development in 24 Hours (Amazon) Android Apps for Absolute Beginners (Amazon) Android Development Tutorial (http://
More informationDeveloping Sensor Applications on Intel Atom Processor-Based Android* Phones and Tablets
Developing Sensor Applications on Intel Atom Processor-Based Android* Phones and Tablets This guide provides application developers with an introduction to the Android Sensor framework and discusses how
More informationE0-245: ASP. Lecture 16+17: Physical Sensors. Dipanjan Gope
E0-245: ASP Lecture 16+17: Physical Sensors Module 2: Android Sensor Applications Location Sensors - Theory of location sensing - Package android.location Physical Sensors - Sensor Manager - Accelerometer
More informationAndroid. Lecture 1. Learning Android Marko Gargenta. Friday, March 22, 13
Android Lecture 1 Learning Android Marko Gargenta Final Project Jan/Feb: ARM March: Android Apr: Final project Complexity Sense the world Analysis Service delivery Hands-on A fun project built-up through
More informationUsing Sensors on the Android Platform. Andreas Terzis Android N00b
Using Sensors on the Android Platform Andreas Terzis Android N00b Hardware-oriented Features Feature Camera Sensor SensorManager SensorEventListener SensorEvent GeoMagneticField Description A class that
More informationjsug.at University of Technology Vienna October 25 th 2010 Android Sensors by Stefan Varga, Michal Kostic touchqode.com
jsug.at University of Technology Vienna October 25 th 2010 Android Sensors by Stefan Varga, Michal Kostic touchqode.com Why sensors? 2 3 4 Applications Resizing screen / tilt Environment adjustment of
More informationObjective. Android Sensors. Sensor Manager Sensor Types Examples. Page 2
Android Sensors Objective Android Sensors Sensor Manager Sensor Types Examples Page 2 Android.hardware Support for Hardware classes with some interfaces Camera: used to set image capture settings, start/stop
More informationUsing Extensions or Cordova Plugins in your RhoMobile Application Darryn Campbell @darryncampbell
Using Extensions or Cordova Plugins in your RhoMobile Application Darryn Campbell @darryncampbell Application Architect Agenda Creating a Rho Native Extension on Android Converting a Cordova Plugin to
More informationApp Development for Smart Devices. Lec #5: Android Sensors
App Development for Smart Devices CS 495/595 - Fall 2012 Lec #5: Android Sensors Tamer Nadeem Dept. of Computer Science Objective Working in Background Sensor Manager Examples Sensor Types Page 2 What
More information! Sensors in Android devices. ! Motion sensors. ! Accelerometer. ! Gyroscope. ! Supports various sensor related tasks
CSC 472 / 372 Mobile Application Development for Android Prof. Xiaoping Jia School of Computing, CDM DePaul University xjia@cdm.depaul.edu @DePaulSWEng Outline Sensors in Android devices Motion sensors
More informationProgramming Mobile Applications with Android
Programming Mobile Applications 22-26 September, Albacete, Spain Jesus Martínez-Gómez Introduction to advanced android capabilities Maps and locations.- How to use them and limitations. Sensors.- Using
More informationDesigning An Android Sensor Subsystem Pitfalls and Considerations
Designing An Android Sensor Subsystem Pitfalls and Considerations Jen Costillo jen@rebelbot.com Simple Choices User experience Battery performance 7/15/2012 Costillo- OSCON 2012 2 Established or Innovative
More informationObsoleted chapter from The Busy Coder's Guide to Advanced Android Development
CHAPTER 13 "" is Android's overall term for ways that Android can detect elements of the physical world around it, from magnetic flux to the movement of the device. Not all devices will have all possible
More informationAndroid app development course
Android app development course Unit 7- + Beyond Android Activities. SMS. Audio, video, camera. Sensors 1 SMS We can send an SMS through Android's native client (using an implicit Intent) Intent smsintent
More informationLocation and Sensors
Location and Sensors Masumi Nakamura Location Manifest android.permission.access_coarse_location android.permission.access_fine_location Package android.location.* LOCATION_SERVICE (LocationManager) context.getsystemservice(context.location_service);
More informationModule 1: Sensor Data Acquisition and Processing in Android
Module 1: Sensor Data Acquisition and Processing in Android 1 Summary This module s goal is to familiarize students with acquiring data from sensors in Android, and processing it to filter noise and to
More information( Modified from Original Source at http://www.devx.com/wireless/article/39239 )
Accessing GPS information on your Android Phone ( Modified from Original Source at http://www.devx.com/wireless/article/39239 ) Using Eclipse, create a new Android project and name it GPS.java. To use
More informationAndroid Concepts and Programming TUTORIAL 1
Android Concepts and Programming TUTORIAL 1 Kartik Sankaran kar.kbc@gmail.com CS4222 Wireless and Sensor Networks [2 nd Semester 2013-14] 20 th January 2014 Agenda PART 1: Introduction to Android - Simple
More informationAndroid Programming Lecture 18: Menus Sensors 11/11/2011
Android Programming Lecture 18: Menus Sensors 11/11/2011 Simple Menu Example Submenu Example Sensors and Actuators Sensors Sensors provide information about the device and its environment Will ignore camera
More informationSensors CS 4720 Web & Mobile Systems
Sensors Web & Mobile Systems Sensor Categories Android sensors as separated into one of three broad categories: Motion sensors measure force and rotation Environmental sensors measure parameters such as
More informationSensor Fusion Mobile Platform Challenges and Future Directions Jim Steele VP of Engineering, Sensor Platforms, Inc.
Sensor Fusion Mobile Platform Challenges and Future Directions Jim Steele VP of Engineering, Sensor Platforms, Inc. Copyright Khronos Group 2012 Page 104 Copyright Khronos Group 2012 Page 105 How Many
More informationFitness Motion Recognition
Fitness Motion Recognition with Android Wear Edward Dale Freeletics Edward Dale, 2015 1 http://www.someecards.com/usercards/viewcard/mjaxmy1hmjiwmwuzmtc4ndgyota1 Edward Dale, 2015 2 Agenda Define scope
More informationGraduate presentation for CSCI 5448. By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )
Graduate presentation for CSCI 5448 By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu ) Content What is Android?? Versions and statistics Android Architecture Application Components Inter Application
More informationSensori and its Advantages
CAS 765 Fall 15 Mbile Cmputing and Wireless Netwrking Rng Zheng Andrid Sensing Subsystem Qiang Xu 2 What is a Sensr? A cnverter that measures a physical quantity and cverts it int a signal which can be
More informationPROGRAMMING IN ANDROID. IOANNIS (JOHN) PAPAVASILEIOU OCTOBER 24 2013 papabasile@engr.uconn.edu
PROGRAMMING IN ANDROID IOANNIS (JOHN) PAPAVASILEIOU OCTOBER 24 2013 papabasile@engr.uconn.edu WHAT IS IT Software platform Operating system Key apps Developers: Google Open Handset Alliance Open Source
More informationSensors and Cellphones
Sensors and Cellphones What is a sensor? A converter that measures a physical quantity and converts it into a signal which can be read by an observer or by an instrument What are some sensors we use every
More informationSENSORS ON ANDROID PHONES. Indian Institute of Technology Kanpur Commonwealth of Learning Vancouver
SENSORS ON ANDROID PHONES Indian Institute of Technology Kanpur Commonwealth of Learning Vancouver Keerthi Kumar Samsung Semiconductors Keerthi Kumar IIT Kanpur Keerthi Kumar Overview What are sensors?
More informationAndroid. Mobile Computing Design and Implementation. Application Components, Sensors. Peter Börjesson
Android Application Components, Sensors Mobile Computing Design and Implementation Peter Börjesson Application Sandbox Android System & Device Data Contacts, Messages, SD Card, Camera, Bluetooth, etc.
More informationTegra Android Accelerometer Whitepaper
Tegra Android Accelerometer Whitepaper Version 5-1 - Contents INTRODUCTION 3 COORDINATE SPACE GLOSSARY 4 ACCELEROMETER CANONICAL AXES 6 WORKING WITH ACCELEROMETER DATA 7 POWER CONSERVATION 10 SUPPORTING
More informationLab 1 (Reading Sensors & The Android API) Week 3
ECE155: Engineering Design with Embedded Systems Winter 2013 Lab 1 (Reading Sensors & The Android API) Week 3 Prepared by Kirill Morozov version 1.1 Deadline: You must submit the lab to the SVN repository
More informationCSE476 Mobile Application Development. Yard. Doç. Dr. Tacha Serif tserif@cse.yeditepe.edu.tr. Department of Computer Engineering Yeditepe University
CSE476 Mobile Application Development Yard. Doç. Dr. Tacha Serif tserif@cse.yeditepe.edu.tr Department of Computer Engineering Yeditepe University Fall 2015 Yeditepe University 2015 Outline Bluetooth Connectivity
More informationArduino & Android. A How to on interfacing these two devices. Bryant Tram
Arduino & Android A How to on interfacing these two devices Bryant Tram Contents 1 Overview... 2 2 Other Readings... 2 1. Android Debug Bridge -... 2 2. MicroBridge... 2 3. YouTube tutorial video series
More informationMobilelogging: Assessing Smartphone Sensors for Monitoring Sleep Behaviour
Institute for Visualization and Interactive Systems University of Stuttgart Universitätsstraße 38 D 70569 Stuttgart Student Research Project Nr. 2428 Mobilelogging: Assessing Smartphone Sensors for Monitoring
More informationIntroduction to NaviGenie SDK Client API for Android
Introduction to NaviGenie SDK Client API for Android Overview 3 Data access solutions. 3 Use your own data in a highly optimized form 3 Hardware acceleration support.. 3 Package contents.. 4 Libraries.
More informationLecture 1 Introduction to Android
These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy
More informationAndroid Geek Night. Application framework
Android Geek Night Application framework Agenda 1. Presentation 1. Trifork 2. JAOO 2010 2. Google Android headlines 3. Introduction to an Android application 4. New project using ADT 5. Main building blocks
More informationAndroid Sensors 101. 2014 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. CC-BY Google
Android Sensors 101 Atilla Filiz atilla@mind.be 2014 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License CC-BY Google These slides are made available to you under
More informationHP TouchPad Sensor Setup for Android
HP TouchPad Sensor Setup for Android Coordinate System The Android device framework uses a 3-axis coordinate system to express data values. For the following HP TouchPad sensors, the coordinate system
More informationMobile applications can benefit from being location-aware This mean to allow application to determine and manipulate location For example:
SENSORS Location service Mobile applications can benefit from being location-aware This mean to allow application to determine and manipulate location For example: find stores nead my current location
More informationUsing the Adafruit Unified Sensor Driver. Created by Kevin Townsend
Using the Adafruit Unified Sensor Driver Created by Kevin Townsend Guide Contents Guide Contents Introduction One Type to Rule Them All Why Is This a Good Thing? Adafruit_Sensor in Detail Standardised
More informationHow to Convert 3-Axis Directions and Swap X-Y Axis of Accelerometer Data within Android Driver by: Gang Chen Field Applications Engineer
Freescale Semiconductor Application Note Document Number: AN4317 Rev. 0, 08/2011 How to Convert 3-Axis Directions and Swap X-Y Axis of Accelerometer Data within Android Driver by: Gang Chen Field Applications
More informationWEARIT DEVELOPER DOCUMENTATION 0.2 preliminary release July 20 th, 2013
WEARIT DEVELOPER DOCUMENTATION 0.2 preliminary release July 20 th, 2013 The informations contained in this document are subject to change without notice and should not be construed as a commitment by Si14
More informationDeveloping Android Apps for BlackBerry 10. JAM854 Mike Zhou- Developer Evangelist, APAC Nov 30, 2012
Developing Android Apps for BlackBerry 10 JAM854 Mike Zhou- Developer Evangelist, APAC Nov 30, 2012 Overview What is the BlackBerry Runtime for Android Apps? Releases and Features New Features Demo Development
More informationIntroduction to Android Programming. Khuong Vu, Graduate student Computer Science department
Introduction to Android Programming Khuong Vu, Graduate student Computer Science department 1 Content Get started Set up environment Running app on simulator GUI Layouts Event handling Life cycle Networking
More informationEffective Use of Android Sensors Based on Visualization of Sensor Information
, pp.299-308 http://dx.doi.org/10.14257/ijmue.2015.10.9.31 Effective Use of Android Sensors Based on Visualization of Sensor Information Young Jae Lee Faculty of Smartmedia, Jeonju University, 303 Cheonjam-ro,
More informationMotion Sensing with mcube igyro Delivering New Experiences for Motion Gaming and Augmented Reality for Android Mobile Devices
Motion Sensing with mcube igyro Delivering New Experiences for Motion Gaming and Augmented Reality for Android Mobile Devices MAY 2014 Every high-end smartphone and tablet today contains three sensing
More informationFrameworks & Android. Programmeertechnieken, Tim Cocx
Frameworks & Android Programmeertechnieken, Tim Cocx Discover thediscover world atthe Leiden world University at Leiden University Software maken is hergebruiken The majority of programming activities
More informationHow to develop your own app
How to develop your own app It s important that everything on the hardware side and also on the software side of our Android-to-serial converter should be as simple as possible. We have the advantage that
More informationInternal Services. CSE 5236: Mobile Application Development Instructor: Adam C. Champion Course Coordinator: Dr. Rajiv Ramnath
Internal Services CSE 5236: Mobile Application Development Instructor: Adam C. Champion Course Coordinator: Dr. Rajiv Ramnath 1 Internal Services Communication: Email, SMS and telephony Audio and video:
More informationInternational Journal of Scientific & Engineering Research, Volume 4, Issue 8, August-2013 1295 ISSN 2229-5518
International Journal of Scientific & Engineering Research, Volume 4, Issue 8, August-2013 1295 HUMAN ACTIVITY RECOGNITION AN ANDROID APPLICATION Abstract Smitha K.S Department of Electronics and Communication,
More informationManaging Android Fragmentation. Carter Jernigan two forty four a.m. LLC
Managing Android Fragmentation Carter Jernigan two forty four a.m. LLC #1 Android 2.1+ only http://developer.android.com/resources/dashboard/platform-versions.html Only 1.6% of all Android users are running
More informationPedometer Project 1 Mr. Michaud / www.nebomusic.net
Mobile App Design Project Pedometer Using Accelerometer Sensor Description: The Android Phone has a three direction accelerometer sensor that reads the change in speed along three axis (x, y, and z). Programs
More informationGoogle Android: An Emerging Innovative Software Platform For Mobile Devices
IJIRST International Journal for Innovative Research in Science & Technology Volume 1 Issue 6 November 2014 ISSN (online): 2349-6010 Google Android: An Emerging Innovative Software Platform For Mobile
More informationDesigning An Android Sensor Subsystem Pitfalls and Considerations
Designing An Android Sensor Subsystem Pitfalls and Considerations Jen Costillo jen@rebelbot.com Simple Choices User experience Battery performance 2 Established or Innovative Product? Established Will
More informationANDROID OPERATING SYSTEM
ANDROID OPERATING SYSTEM Himanshi Grover,Devesh Agrawal IT Department, Dronacharya College Of Engg Gurgaon,Haryana,India Abstract - Android has become need rather than luxury these days. The computing
More informationMaking Android Motion Applications Using the Unity 3D Engine
InvenSense Inc. 1197 Borregas Ave., Sunnyvale, CA 94089 U.S.A. Tel: +1 (408) 988-7339 Fax: +1 (408) 988-8104 Website: www.invensense.com Document Number: Revision: Making Android Motion Applications Using
More informationSmartphone-based sensor networks and some statistical challenges: the Earthquake Network Android application
Smartphone-based sensor networks and some statistical challenges: the Earthquake Network Android application Francesco Finazzi University of Bergamo 29 November 2013 - University of Glasgow Outline Outline
More informationModern Market Sensors in Smartphones: State-of-the-art How to make smartphones even more smarter? Conclusions
Smartphone Sensing: What Sensors Would we Like to Have in the Future Smartphones? Dr. Sergey Y. Yurish International Frequency Sensor Association (IFSA), Technology Assistance BCNA 2010, S.L. Barcelona,
More informationAn Introduction to Android
An Introduction to Android Michalis Katsarakis M.Sc. Student katsarakis@csd.uoc.gr Tutorial: hy439 & hy539 16 October 2012 http://www.csd.uoc.gr/~hy439/ Outline Background What is Android Android as a
More informationHello World! Some code
Embedded Systems Programming Hello World! Lecture 10 Verónica Gaspes www2.hh.se/staff/vero What could an Android hello world application be like? Center for Research on Embedded Systems School of Information
More informationPerformance issues in writing Android Apps
Performance issues in writing Android Apps Octav Chipara The process of developing Android apps problem definition focus: define the problem what is the input/out? what is the criteria for success? develop
More informationFrequently Asked Questions (FAQs)
Frequently Asked Questions (FAQs) OS5000 & OS4000 Family of Compasses FAQ Document Rev. 2.0 Important Notes: Please also reference the OS5000 family user guide & OS4000 user guide on our download page.
More informationAndroid Basics. Xin Yang 2016-05-06
Android Basics Xin Yang 2016-05-06 1 Outline of Lectures Lecture 1 (45mins) Android Basics Programming environment Components of an Android app Activity, lifecycle, intent Android anatomy Lecture 2 (45mins)
More informationContext-Awareness and Location-based Services
Praktikum Mobile und Verteilte Systeme Context-Awareness and Location-based Services Prof. Dr. Claudia Linnhoff-Popien Philipp Marcus, Mirco Schönfeld http://www.mobile.ifi.lmu.de Sommersemester 2015 Context-Awareness
More informationThe BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications
The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications Joshua Ellul jellul@imperial.ac.uk Overview Brief introduction to Body Sensor Networks BSN Hardware
More informationCookbook. Flash ios Apps. Christopher Caleb. 100 practical recipes for developing ios apps with Flash Professional and Adobe AIR PUBLISHING MUMBAI
Flash ios Apps Cookbook 100 practical recipes for developing ios apps with Flash Professional and Adobe AIR Christopher Caleb PUBLISHING BIRMINGHAM - MUMBAI Preface 1 Chapter 1: Getting Started with ios
More information類 比 與 MEMS 感 測 器 啟 動 智 慧 新 生 活 The Smart-World Started with ST (Analog, MEMS and Sensors)
類 比 與 MEMS 感 測 器 啟 動 智 慧 新 生 活 The Smart-World Started with ST (Analog, MEMS and Sensors) 郁 正 德 資 深 技 術 行 銷 經 理 意 法 半 導 體 Robert Yu Sr. Technical Marketing Manager STMicroelectronics. laubarnes on flickr
More informationIOIO for Android Beginners Guide Introduction
IOIO for Android Beginners Guide Introduction This is the beginners guide for the IOIO for Android board and is intended for users that have never written an Android app. The goal of this tutorial is to
More informationInternational Journal of Advanced Research in Computer Science and Software Engineering
Volume 3, Issue 3, March 203 ISSN: 2277 28X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Real Time Monitoring
More informationANDROID. Programming basics
ANDROID Programming basics Overview Mobile Hardware History Android evolution Android smartphone overview Hardware components at high level Operative system Android App development Why Android Apps? History
More informationMobile Phones Operating Systems
Mobile Phones Operating Systems José Costa Software for Embedded Systems Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2015-05-28 José Costa (DEI/IST) Mobile Phones Operating
More informationAn Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi
An Introduction to Android Application Serdar Akın, Haluk Tüfekçi ARDIC ARGE http://www.ardictech.com April 2011 Environment Programming Languages Java (Officially supported) C (Android NDK Needed) C++
More informationAUTOMATIC HUMAN FREE FALL DETECTION USING ANDROID
AUTOMATIC HUMAN FREE FALL DETECTION USING ANDROID Mrs.P.Booma devi 1, Mr.S.P.Rensingh Xavier 2 Assistant Professor, Department of EEE, Ratnavel Subramaniam College of Engineering and Technology, Dindigul
More informationPrioVR Production Plan:
PrioVR Production Plan: 1. System Overview 1.1 Architecture Overview The entire PrioVR system consists of several sub-systems that all must function and integrate in order for the entire system to work.
More informationHere to take you beyond Mobile Application development using Android Course details
Here to take you beyond Mobile Application development using Android Course details Mobile Application Development using Android Objectives: To get you started with writing mobile application using Android
More informationAcellus Natural 3D Tablet
Acellus Natural 3D Tablet Locked Down & Optimized for Use with the Acellus Learning System Acellus Natural 3D Tablet Locked Down & Optimized for Use with the Acellus Learning System Contents I. Quick Start
More informationECE 455/555 Embedded System Design. Android Programming. Wei Gao. Fall 2015 1
ECE 455/555 Embedded System Design Android Programming Wei Gao Fall 2015 1 Fundamentals of Android Application Java programming language Code along with any required data and resource files are compiled
More informationMOVEIRO BT-200 Technical Information for Application Developer
MOVEIRO BT-200 Technical Information for Application Developer SEIKO EPSON CORPORATION 2014. All rights reserved. Rev.C Table of Content 1. Scope... 1 1.1 Purpose... 1 1.2 Major System Specification...
More informationAPPFORUM2014. Helping the developer community build next-generation, multi-platform apps. SCHAUMBURG, ILLINOIS SEPTEMBER 8-10
APPFORUM2014 Helping the developer community build next-generation, multi-platform apps. SCHAUMBURG, ILLINOIS SEPTEMBER 8-10 NFC OVERVIEW Chuck Bolen Chief Architect Enterprise Mobile Computing APPFORUM2014
More informationMobile App Sensor Documentation (English Version)
Mobile App Sensor Documentation (English Version) Mobile App Sensor Documentation (English Version) Version: 1.2.1 Date: 2015-03-25 Author: email: Kantar Media spring support@spring.de Content Mobile App
More informationDeveloping Android Apps for BlackBerry 10. JAM 354 Matthew Whiteman - Product Manager February 6, 2013
Developing Android Apps for BlackBerry 10 JAM 354 Matthew Whiteman - Product Manager February 6, 2013 Overview What is the BlackBerry Runtime for Android Apps? BlackBerry 10 Features New Features Demo
More informationAndroid Best Practices to Improve Battery Efficiency
32 IMVS Fokus Report 214 Android Best Practices to Improve Battery Efficiency Multi-core CPUs, motion sensors and multiple wireless radios all draw a significant amount of power which make a regular battery
More informationQuick Start Guide ActiGraph GT9X Link + ActiLife
Quick Start Guide ActiGraph GT9X Link + ActiLife Activity Monitor: ActiGraph GT9X Link Revision: A Released: 11/24/2014 Quick Start Guide ActiGraph GT9X Link + ActiLife Activity Monitor: ActiGraph GT9X
More informationELDERLY SUPPORT - ANDROID APPLICATION FOR FALL DETECTION AND TRACKING TEJITHA RUDRARAJU. B.E, Anna University, India, 2011 A REPORT
ELDERLY SUPPORT - ANDROID APPLICATION FOR FALL DETECTION AND TRACKING By TEJITHA RUDRARAJU B.E, Anna University, India, 2011 A REPORT Submitted in partial fulfillment of the requirements for the degree
More informationCharith Pereral, Arkady Zaslavsky, Peter Christen, Ali Salehi and Dimitrios Georgakopoulos (IEEE 2012) Presented By- Anusha Sekar
Charith Pereral, Arkady Zaslavsky, Peter Christen, Ali Salehi and Dimitrios Georgakopoulos (IEEE 2012) Presented By- Anusha Sekar Introduction Terms and Concepts Mobile Sensors Global Sensor Networks DAM4GSN
More informationExpert Android Apps Development
Course Contents: 1. 2D Animations Frame-by-Frame Animation o Planning for Frame-by-Frame Animation o Creating the Activity o Adding Animation to the Activity Layout Animation o Basic Tweening Animation
More informationDisclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else.
Disclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else. Android overview From a system design perspective Xiao-Feng Li xiaofeng.li@gmail.com
More informationImproving Workflow Efficiency using the Trimble R10 with SurePoint. Marco Wuethrich Trimble Applications Specialist
Improving Workflow Efficiency using the Trimble R10 with SurePoint Marco Wuethrich Trimble Applications Specialist Content Trimble SurePoint technology Trimble R10 (1) ebubble, (2) tilt auto-measure and
More informationAdFalcon Android SDK 2.1.4 Developer's Guide. AdFalcon Mobile Ad Network Product of Noqoush Mobile Media Group
AdFalcon Android SDK 214 Developer's Guide AdFalcon Mobile Ad Network Product of Noqoush Mobile Media Group Table of Contents 1 Introduction 3 Supported Android version 3 2 Project Configurations 4 Step
More information