App Development for Smart Devices. Lec #5: Android Sensors
|
|
|
- Helen Mosley
- 10 years ago
- Views:
Transcription
1 App Development for Smart Devices CS 495/595 - Fall 2012 Lec #5: Android Sensors Tamer Nadeem Dept. of Computer Science
2 Objective Working in Background Sensor Manager Examples Sensor Types Page 2
3 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 Sensors have been used in cellphones since they were invented Microphone, number keys Instead of carrying around 10 separate devices, now you just need 1 Page 3
4 Android Sensors MIC Camera Temperature Location (GPS or Network) Orientation Accelerometer Proximity Pressure Light Page 4
5 Android.hardware Package Support for Hardware classes with some interfaces Camera: used to set image capture settings, start/stop preview, snap pictures, and retrieve frames for encoding for video. Camera.CameraInfo: Information about a camera Camera.Parameters: Camera service settings. Camera.Size: Image size (width and height dimensions). GeomagneticField: Estimate magnetic field at a given point on Earth and compute the magnetic declination from true north. Sensor: Class representing a sensor. SensorEvent: Represents a Sensor event and holds information such as sensor's type, time-stamp, accuracy and sensor's data. SensorManager: SensorManager lets you access the device's sensors. Page 5
6 Android Software Stack Sensor Manager Page 6
7 Types of Sensors Not every device has every kind of sensor Constants from Sensor class Sensor.TYPE_ACCELEROMETER hardware acceleration force in m/s 2 x, y, z axis includes gravity Page 7 7
8 Accelerometer Sensor Acceleration is defined as the rate of change of velocity. Accelerometers measure how quickly the speed of the device is changing in a given direction. Detect movement and corresponding speed s rate of change. Accelerometers do not measure velocity How does it work? The proof mass shown above is allowed to move in a plane. The attached fingers form a capacitor with the two plates around it. The rate of change of the capacitance is measured and translated into an acceleration Page 8
9 Types of Sensors Sensor.TYPE_AMBIENT_TEMPERATURE hardware "room" temperature in degrees Celsius no such sensor on dev phones Sensor.TYPE_GRAVITY software or hardware just gravity if phone at rest same as TYPE_ACCELEROMETER Page 9 9
10 Types of Sensors Sensor.TYPE_GYROSCOPE hardware measure device's rate of rotation in radians / second around 3 axis Sensor.TYPE_LIGHT hardware light level in lx, lux is SI measure illuminance in luminous flux per unit area Page 10
11 Types of Sensors Sensor.TYPE_LINEAR_ACCELERATION software or hardware measure acceleration force applied to device in three axes excluding the force of gravity Sensor.TYPE_MAGNETC_FIELD hardware ambient geomagnetic field in all three axes ut micro Teslas Page 11 11
12 Types of Sensors Sensor.TYPE_ORIENTATION [deprecated] software measure of degrees of rotation a device makes around all three axes Sensor.TYPE_PRESSURE hardware ambient air pressure in hpa or mbar force per unit area 1 Pascal = 1 Newton per square meter hecto Pascals (100 Pascals) milli bar - 1 mbar = 1hecto Pascal Page 12 12
13 Orientation Sensor Orientation Sensor is a combination of the magnetic field Sensors, which function as an electronic compass, and accelerometers, which determine the pitch and roll. Two alternatives for determining the device orientation. Query the orientation Sensor directly Derive the orientation using the accelerometers and magnetic field Sensors. x-axis (azimuth) 0/360 degrees is north, 90 east, 180 south, and 270 west y-axis (pitch) 0 flat on its back, -90 standing upright. z-axis (roll) 0 flat on its back, -90 is the screen facing left Page 13
14 Types of Sensors Sensor.TYPE_PROXIMITY hardware proximity of an object in cm relative to the view screen of a device most just binary (see range, resolution) typically used to determine if handset is being held to person's ear during a call Sensor.TYPE_RELATIVE_HUMIDITY ambient humidity in percent ( 0 to 100) Page 14 14
15 Types of Sensors Sensor.TYPE_ROTATION_VECTOR hardware or software orientation of device, three elements of the device's rotation vector Sensor.TYPE_TEMPERATURE hardware temperature of the device in degrees Celsius Page 15 15
16 Availability of Sensors Page 16 16
17 Async Callbacks Android s sensors are controlled by external services and only send events when they choose to An app must register a callback to be notified of a sensor event Each sensor has a related XXXListener interface that your callback must implement E.g. LocationListener Your App SensorManager Register Callback Sensor Event Sensor Event Sensor Event Page 17
18 Android Software Stack Sensor Manager Page 18
19 Sensing & Sensor Manager Device specific ServiceManager provides access to Sensor Manager Service Use Context.getSystemService(SENSOR_SERVICE) for access String service_name = Context.SENSOR_SERVICE; SensorManager sensormanager = (SensorManager) getsystemservice(service_name) Note that you should disable any sensors you don t need, especially when activity paused. System will not disable automatically when screen turns off Battery will drain quickly otherwise. Page 19
20 SensorManager s Methods Sensor getdefaultsensor(int type) Use this method to get the default sensor for a given type List<Sensor> getsensorlist(int type) Use this method to get the list of available sensors of a certain type boolean registerlistener(sensoreventlistener listener, Sensor sensor, int rate) Registers a SensorEventListener for the given sensor. void unregisterlistener(sensoreventlistener listener, Sensor sensor) Unregisters a listener for the sensors with which it is registered. Page 20
21 Sensor s Methods public float getmaximumrange () - maximum range of the sensor in the sensor's unit. public int getmindelay () - the minimum delay allowed between two events in microsecond or zero if this sensor only returns a value when the data it's measuring changes. public String getname () - name string of the sensor. public float getpower () - the power in ma used by this sensor while in use. public float getresolution () - resolution of the sensor in the sensor's unit. Page 21
22 getpower() Methods The device s battery has a 1500 ma Under normal use, the battery lasts 10hours. If we use orientation, rotation vector, & magnetic field sensors How long would it last now? Page 22
23 Checking for Sensors Sensor defaultgyroscope = sensormanager.getdefaultsensor (Sensor.TYPE_GYROSCOPE); //(Returns null if none) //Or, get a list of all sensors of a type: List<Sensor> pressuresensors = sensormanager.getsensorlist(sensor.type_pressure); //Or, get a list of all sensors of a type: List<Sensor> allsensors = sensormanager.getsensorlist(sensor.type_all); Page 23
24 Listening for Sensors final SensorEventListener mysensoreventlistener = new SensorEventListener() { public void onsensorchanged(sensorevent sensorevent) { // TODO Monitor Sensor changes. public void onaccuracychanged(sensor sensor, int accuracy) { // TODO React to a change in Sensor accuracy. Accuracy: SensorManager.SENSOR_STATUS_ACCURACY_LOW SensorManager.SENSOR_STATUS_ACCURACY_MEDIUM SensorManager.SENSOR_STATUS_ACCURACY_HIGH SensorManager.SENSOR_STATUS_ACCURACY_UNRELIABL Page 24
25 SensorEvent SensorEvent parameter in the onsensorchanged method includes four properties used to describe a Sensor event: sensor: The sensor that triggered the event. accuracy: The accuracy of the Sensor when the event occurred. values: A float array that contains the new value(s) detected. timestamp: The time in nanosecond at which the event occurred. Page 25
26 Sensor Values Page 26
27 Register // Usually in onresume Sensor sensor = sensormanager.getdefaultsensor(sensor.type_proximity); sensormanager.registerlistener(mysensoreventlistener, sensor, SensorManager.SENSOR_DELAY_NORMAL); // Usually in onpause sensormanager.unregisterlistener(mysensoreventlistener); Update Rate: SensorManager.SENSOR_DELAY_FASTEST SensorManager.SENSOR_DELAY_GAME SensorManager.SENSOR_DELAY_NORMAL SensorManager.SENSOR_DELAY_UI Page 27
28 Accelerometer, Compass, & Orientation Allow you to: Determine the current device orientation Monitor and track changes in orientation Know which direction the user is facing Monitor acceleration changes in movement rate in any direction Open possibilities for your applications: Use these with a map, camera, and location-based services to create augmented reality interfaces. Create user interface that adjust dynamically to suit device orientation. Monitor rapid acceleration to detect if a device is dropped or thrown. Measure movement or vibration (e.g., locking application). User interface controls that use physical gestures and movement. Page 28
29 Listener for Changes (Accel) public void setupsensorlistener() { SensorManager sm = (SensorManager)getSystemService(Context.SENSOR_SERVICE); int sensortype = Sensor.TYPE_ACCELEROMETER; sm.registerlistener(mysensoreventlistener, sm.getdefaultsensor(sensortype), SensorManager.SENSOR_DELAY_NORMAL); final SensorEventListener mysensoreventlistener = new SensorEventListener() { public void onsensorchanged(sensorevent sensorevent) { if (sensorevent.sensor.gettype() == Sensor.TYPE_ACCELEROMETER) { float xaxis_laterala = sensorevent.values[0]; float yaxis_longitudinala = sensorevent.values[1]; float zaxis_verticala = sensorevent.values[2]; ; // TODO apply the acceleration changes to your application. Page 29
30 Accelerometer Data Page 30
31 Collecting Sensor Data How we have collected the data
32 Walking Experiment l We use the sensors (Accelerometer+Gyroscope) reading to count the stride. Gyroscope Reading Detected Stride Page 32
33 Walking Experiment l l We use the orientation and magnetic field sensor to detect the turns. We limit each turn to fixed angles(i.e. 0,45,90,135,180,225,270 degree) for simplicity. Orientation sensor reading Stride Turn/ change of angle Page 33
34 Listener for Changes (Orientation) public void setupsensorlistener() { SensorManager sm = (SensorManager)getSystemService(Context.SENSOR_SERVICE); int sensortype = Sensor.TYPE_ORIENTATION; sm.registerlistener(mysensoreventlistener, sm.getdefaultsensor(sensortype), SensorManager.SENSOR_DELAY_NORMAL); final SensorEventListener mysensoreventlistener = new SensorEventListener() { public void onsensorchanged(sensorevent sensorevent) { if (sensorevent.sensor.gettype() == Sensor.TYPE_ORIENTATION) { float headingangle = sensorevent.values[0]; float pitchangle = sensorevent.values[1]; float rollangle = sensorevent.values[2]; ; // TODO apply the orientation changes to your application. Page 34
35 Controlling Vibration Vibration is an excellent way to provide haptic user feedback. Applications needs the VIBRATE permission in application manifest: <uses-permission android:name="android.permission.vibrate"/> Example: String vibratorservice = Context.VIBRATOR_SERVICE; Vibrator vibrator = (Vibrator)getSystemService(vibratorService); long[] pattern = {1000, 2000, 4000, 8000, ; vibrator.vibrate(pattern, 0); // Execute vibration pattern. vibrator.vibrate(1000); // Vibrate for 1 second. Page 35
36 Questions? Page 36
37 To DO Example 1 (in slides) Example 2 (in slides) Example 3 (in slides) Assignment #3: Assignment Tracker App v2.0 Page 37
38 Example 1. Displaying Accelerometer and Orientation Data Create an activity with accelerometer and orientation data. package com.exercise.androidsensorlist; import android.app.listactivity; import android.content.context; import android.hardware.sensor; import android.hardware.sensormanager; import android.os.bundle; import android.widget.arrayadapter; public class SensorTest extends Activity implements SensorEventListener { SensorManager sensormanager = null; //for accelerometer values TextView outputx; TextView outputy; TextView outputz; //for orientation values TextView outputx2; TextView outputy2; TextView outputz2; Page 38
39 Example 1. Displaying Accelerometer and Orientation public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); sensormanager = (SensorManager) getsystemservice(sensor_service); setcontentview(r.layout.main); //just some textviews, for data output outputx = (TextView) findviewbyid(r.id.textview01); outputy = (TextView) findviewbyid(r.id.textview02); outputz = (TextView) findviewbyid(r.id.textview03); outputx2 = (TextView) findviewbyid(r.id.textview04); outputy2 = (TextView) findviewbyid(r.id.textview05); outputz2 = (TextView) findviewbyid(r.id.textview06); Page 39
40 Example 1. Displaying Accelerometer and Orientation protected void onresume() { super.onresume(); sensormanager.registerlistener(this, sensormanager.getdefaultsensor(sensor.type_accelerometer), sensormanager.sensor_delay_game); sensormanager.registerlistener(this, sensormanager.getdefaultsensor(sensor.type_orientation), protected void onstop() { super.onstop(); sensormanager.unregisterlistener(this, sensormanager.getdefaultsensor(sensor.type_accelerometer)); sensormanager.unregisterlistener(this, sensormanager.getdefaultsensor(sensor.type_orientation)); Page 40
41 Example 1. Displaying Accelerometer and Orientation Data public void onsensorchanged(sensorevent event) { synchronized (this) { switch (event.sensor.gettype()){ case Sensor.TYPE_ACCELEROMETER: outputx.settext("x:"+float.tostring(event.values[0])); outputy.settext("y:"+float.tostring(event.values[1])); outputz.settext("z:"+float.tostring(event.values[2])); break; case Sensor.TYPE_ORIENTATION: outputx2.settext("x:"+float.tostring(event.values[0])); outputy2.settext("y:"+float.tostring(event.values[1])); outputz2.settext("z:"+float.tostring(event.values[2])); public void onaccuracychanged(sensor sensor, int accuracy) { Page 41
42 Example 2. Creating a G-Forceometer Create a simple device to measure g-force using the accelerometers to determine the current force being exerted on the device. Forceometer Activity & Layout (main.xml) <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:orientation="vertical android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/acceleration android:gravity="center" android:layout_width="fill_parent android:layout_height="wrap_content" android:textstyle="bold android:textsize="32sp" android:text="center android:editable="false" android:singleline="true android:layout_margin="10px" /> <TextView android:id="@+id/maxacceleration android:gravity="center" android:layout_width="fill_parent android:layout_height="wrap_content" android:textstyle="bold android:textsize="40sp" android:text="center android:editable="false" android:singleline="true android:layout_margin="10px" /> </LinearLayout> Page 42
43 Example 2. Creating a G-Forceometer Within Forceometer Activity class, create instance variables SensorManager sensormanager; TextView accelerationtextview; TextView maxaccelerationtextview; float currentacceleration = 0; float maxacceleration = 0; Within Forceometer Activity class, create a new SensorEventListener implementation private final SensorEventListener sensoreventlistener = new SensorEventListener() { double calibration = SensorManager.STANDARD_GRAVITY; public void onaccuracychanged(sensor sensor, int accuracy) { public void onsensorchanged(sensorevent event) { double x = event.values[0]; double y = event.values[1]; double z = event.values[2]; double a = Math.round(Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2) + Math.pow(z, 2))); currentacceleration = Math.abs((float)(a-calibration)); if (currentacceleration > maxacceleration) maxacceleration = currentacceleration; ; Page 43
44 Example 2. Creating a G-Forceometer Update the oncreate method to register your new Listener for accelerometer updates using the public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); accelerationtextview = (TextView)findViewById(R.id.acceleration); maxaccelerationtextview = (TextView)findViewById(R.id.maxAcceleration); sensormanager = (SensorManager)getSystemService(Context.SENSOR_SERVICE); Sensor accelerometer = sensormanager.getdefaultsensor(sensor.type_accelerometer); sensormanager.registerlistener(sensoreventlistener, accelerometer, SensorManager.SENSOR_DELAY_FASTEST); Page 44
45 Example 2. Creating a G-Forceometer Create a new updategui method that synchronizes with the GUI thread based on a Timer before updating the Text Views private void updategui() { runonuithread(new Runnable() { public void run() { String currentg = currentacceleration/sensormanager.standard_gravity + "Gs"; accelerationtextview.settext(currentg); accelerationtextview.invalidate(); ; ); String maxg = maxacceleration/sensormanager.standard_gravity + "Gs"; maxaccelerationtextview.settext(maxg); maxaccelerationtextview.invalidate(); Page 45
46 Example 2. Creating a G-Forceometer Update the oncreate method to start a timer that s used to update the GUI every public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); accelerationtextview = (TextView)findViewById(R.id.acceleration); maxaccelerationtextview = (TextView)findViewById(R.id.maxAcceleration); sensormanager = (SensorManager)getSystemService(Context.SENSOR_SERVICE); Sensor accelerometer = sensormanager.getdefaultsensor(sensor.type_accelerometer); sensormanager.registerlistener(sensoreventlistener, accelerometer, SensorManager.SENSOR_DELAY_FASTEST); Timer updatetimer = new Timer("gForceUpdate"); updatetimer.scheduleatfixedrate(new TimerTask() { public void run() { updategui();, 0, 100); Page 46
47 Example 3. Compass App package com.example.android.apis.graphics; import android.content.context; import android.graphics.*; import android.hardware.sensor; import android.hardware.sensorevent; import android.hardware.sensoreventlistener; import android.hardware.sensormanager; import android.os.bundle; import android.util.config; import android.util.log; import android.view.view; public class Compass extends GraphicsActivity { private static final String TAG = "Compass"; private SensorManager msensormanager; private Sensor msensor; private SampleView mview; private float[] mvalues; Page 47
48 Example 3. Compass App private final SensorEventListener mlistener = new SensorEventListener() { public void onsensorchanged(sensorevent event) { if (Config.DEBUG) Log.d(TAG, "sensorchanged (" + event.values[0] + ", " + event.values[1] + ", " + event.values[2] + ")"); mvalues = event.values; if (mview!= null) { mview.invalidate(); ; public void onaccuracychanged(sensor sensor, int accuracy) protected void oncreate(bundle icicle) { super.oncreate(icicle); msensormanager = (SensorManager)getSystemService(Context.SENSOR_SERVICE); msensor = msensormanager.getdefaultsensor(sensor.type_orientation); mview = new SampleView(this); setcontentview(mview); Page 48
49 Example 3. Compass protected void onresume() { if (Config.DEBUG) Log.d(TAG, "onresume"); super.onresume(); msensormanager.registerlistener(mlistener, msensor, protected void onstop() { if (Config.DEBUG) Log.d(TAG, "onstop"); msensormanager.unregisterlistener(mlistener); super.onstop(); private class SampleView extends View { private Paint mpaint = new Paint(); private Path mpath = new Path(); private boolean manimate; public SampleView(Context context) { super(context); Page 49
50 Example 3. Compass App // Construct a wedge-shaped path mpath.moveto(0, -50); mpath.lineto(-20, 60); mpath.lineto(0, 50); mpath.lineto(20, 60); protected void ondraw(canvas canvas) { Paint paint = mpaint; canvas.drawcolor(color.white); paint.setantialias(true); paint.setcolor(color.black); paint.setstyle(paint.style.fill); int w = canvas.getwidth(); int h = canvas.getheight(); int cx = w / 2; int cy = h / 2; Page 50
51 Example 3. Compass App canvas.translate(cx, cy); if (mvalues!= null) { canvas.rotate(-mvalues[0]); canvas.drawpath(mpath, protected void onattachedtowindow() { manimate = true; if (Config.DEBUG) Log.d(TAG, "onattachedtowindow. manimate=" + manimate); protected void ondetachedfromwindow() { manimate = false; if (Config.DEBUG) Log.d(TAG, "ondetachedfromwindow. manimate=" + manimate); super.ondetachedfromwindow(); Page 51
Objective. 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
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,
Using 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
Using the Android Sensor API
Using the Android Sensor API Juan José Marrón Department of Computer Science & Engineering [email protected] # Outline Sensors description: - Motion Sensors - Environmental Sensors - Positioning Sensors
Android 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,
Sensors & 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
Developing 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
Android Sensors. XI Jornadas SLCENT de Actualización Informática y Electrónica
Android Sensors XI Jornadas SLCENT de Actualización Informática y Electrónica About me José Juan Sánchez Hernández Android Developer (In my spare time :) Member and collaborator of: - Android Almería Developer
Obsoleted 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
! 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 [email protected] @DePaulSWEng Outline Sensors in Android devices Motion sensors
ELET4133: 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
CS 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:
Android Concepts and Programming TUTORIAL 1
Android Concepts and Programming TUTORIAL 1 Kartik Sankaran [email protected] CS4222 Wireless and Sensor Networks [2 nd Semester 2013-14] 20 th January 2014 Agenda PART 1: Introduction to Android - Simple
CSE476 Mobile Application Development. Yard. Doç. Dr. Tacha Serif [email protected]. Department of Computer Engineering Yeditepe University
CSE476 Mobile Application Development Yard. Doç. Dr. Tacha Serif [email protected] Department of Computer Engineering Yeditepe University Fall 2015 Yeditepe University 2015 Outline Bluetooth Connectivity
06 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
Android 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
Android 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
Arduino & 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
ANDROID 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,
E0-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
Lab 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
Android 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
HP 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
Programming 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
Using 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
Module 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
Android Introduction. Hello World. @2010 Mihail L. Sichitiu 1
Android Introduction Hello World @2010 Mihail L. Sichitiu 1 Goal Create a very simple application Run it on a real device Run it on the emulator Examine its structure @2010 Mihail L. Sichitiu 2 Google
Android For Java Developers. Marko Gargenta Marakana
Android For Java Developers Marko Gargenta Marakana Agenda Android History Android and Java Android SDK Hello World! Main Building Blocks Debugging Summary History 2005 Google buys Android, Inc. Work on
Now that we have the Android SDK, Eclipse and Phones all ready to go we can jump into actual Android development.
Android Development 101 Now that we have the Android SDK, Eclipse and Phones all ready to go we can jump into actual Android development. Activity In Android, each application (and perhaps each screen
MMI 2: Mobile Human- Computer Interaction Android
MMI 2: Mobile Human- Computer Interaction Android Prof. Dr. [email protected] Mobile Interaction Lab, LMU München Android Software Stack Applications Java SDK Activities Views Resources Animation
Using 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
How 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
Sensors 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
Chapter 2 Getting Started
Welcome to Android Chapter 2 Getting Started Android SDK contains: API Libraries Developer Tools Documentation Sample Code Best development environment is Eclipse with the Android Developer Tool (ADT)
Performance 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
App Development for Smart Devices. Lec #4: Services and Broadcast Receivers Try It Out
App Development for Smart Devices CS 495/595 - Fall 2013 Lec #4: Services and Broadcast Receivers Try It Out Tamer Nadeem Dept. of Computer Science Try It Out Example 1 (in this slides) Example 2 (in this
4. The Android System
4. The Android System 4. The Android System System-on-Chip Emulator Overview of the Android System Stack Anatomy of an Android Application 73 / 303 4. The Android System Help Yourself Android Java Development
Android Development Tutorial. Nikhil Yadav CSE40816/60816 - Pervasive Health Fall 2011
Android Development Tutorial Nikhil Yadav CSE40816/60816 - Pervasive Health Fall 2011 Database connections Local SQLite and remote access Outline Setting up the Android Development Environment (Windows)
Android Development. Marc Mc Loughlin
Android Development Marc Mc Loughlin Android Development Android Developer Website:h:p://developer.android.com/ Dev Guide Reference Resources Video / Blog SeCng up the SDK h:p://developer.android.com/sdk/
Pedometer 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
AdFalcon 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
Android Persistency: Files
15 Android Persistency: Files Notes are based on: The Busy Coder's Guide to Android Development by Mark L. Murphy Copyright 2008-2009 CommonsWare, LLC. ISBN: 978-0-9816780-0-9 & Android Developers http://developer.android.com/index.html
Android Services. Services
Android Notes are based on: Android Developers http://developer.android.com/index.html 22. Android Android A Service is an application component that runs in the background, not interacting with the user,
Android 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 [email protected] 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
Introduction 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.
Admin. Mobile Software Development Framework: Android Activity, View/ViewGroup, External Resources. Recap: TinyOS. Recap: J2ME Framework
Admin. Mobile Software Development Framework: Android Activity, View/ViewGroup, External Resources Homework 2 questions 10/9/2012 Y. Richard Yang 1 2 Recap: TinyOS Hardware components motivated design
Getting Started With Android
Getting Started With Android Author: Matthew Davis Date: 07/25/2010 Environment: Ubuntu 10.04 Lucid Lynx Eclipse 3.5.2 Android Development Tools(ADT) 0.9.7 HTC Incredible (Android 2.1) Preface This guide
Mobile Application Development
Mobile Application Development (Android & ios) Tutorial Emirates Skills 2015 3/26/2015 1 What is Android? An open source Linux-based operating system intended for mobile computing platforms Includes a
Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 2 Android Platform. Marco Picone - 2012
Android Development Lecture 2 Android Platform Università Degli Studi di Parma Lecture Summary 2 The Android Platform Dalvik Virtual Machine Application Sandbox Security and Permissions Traditional Programming
Designing An Android Sensor Subsystem Pitfalls and Considerations
Designing An Android Sensor Subsystem Pitfalls and Considerations Jen Costillo [email protected] Simple Choices User experience Battery performance 7/15/2012 Costillo- OSCON 2012 2 Established or Innovative
Effective 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,
Tutorial #1. Android Application Development Advanced Hello World App
Tutorial #1 Android Application Development Advanced Hello World App 1. Create a new Android Project 1. Open Eclipse 2. Click the menu File -> New -> Other. 3. Expand the Android folder and select Android
directory to "d:\myproject\android". Hereafter, I shall denote the android installed directory as
1 of 6 2011-03-01 12:16 AM yet another insignificant programming notes... HOME Android SDK 2.2 How to Install and Get Started Introduction Android is a mobile operating system developed by Google, which
Developing an Android App. CSC207 Fall 2014
Developing an Android App CSC207 Fall 2014 Overview Android is a mobile operating system first released in 2008. Currently developed by Google and the Open Handset Alliance. The OHA is a consortium of
Android. 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.
Internal 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:
Mobile Application Development Android
Mobile Application Development Android MTAT.03.262 Satish Srirama [email protected] Goal Give you an idea of how to start developing Android applications Introduce major Android application concepts
Kathy Au Billy Yi Fan Zhou Department of Electrical and Computer Engineering University of Toronto { kathy.au, billy.zhou }@utoronto.
ECE1778 Project Report Kathy Au Billy Yi Fan Zhou Department of Electrical and Computer Engineering University of Toronto { kathy.au, billy.zhou }@utoronto.ca Executive Summary The goal of this project
Android App Development. Rameel Sethi
Android App Development Rameel Sethi Relevance of Android App to LFEV Would be useful for technician at Formula EV race course to monitor vehicle conditions on cellphone Can serve as useful demo of LFEV
MAP524/DPS924 MOBILE APP DEVELOPMENT (ANDROID) MIDTERM TEST OCTOBER 2013 STUDENT NAME STUDENT NUMBER
MAP524/DPS924 MOBILE APP DEVELOPMENT (ANDROID) MIDTERM TEST OCTOBER 2013 STUDENT NAME STUDENT NUMBER Please answer all questions on the question sheet This is an open book/notes test. You are allowed to
HERE SDK for Android. Developer's Guide. Online Version 2.1
HERE SDK for Android Developer's Guide Online Version 2.1 Contents 2 Contents Legal Notices.4 Document Information 5 Service Support. 6 Chapter1:Overview 7 What is the HERE SDK for Android?..8 Feature
WEARIT 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
Android Development Tutorial. Human-Computer Interaction II (COMP 4020) Winter 2013
Android Development Tutorial Human-Computer Interaction II (COMP 4020) Winter 2013 Mobile OS Symbian ios BlackBerry Window Phone Android. World-Wide Smartphone Sales (Thousands of Units) Android Phones
Mocean Android SDK Developer Guide
Mocean Android SDK Developer Guide For Android SDK Version 3.2 136 Baxter St, New York, NY 10013 Page 1 Table of Contents Table of Contents... 2 Overview... 3 Section 1 Setup... 3 What changed in 3.2:...
Tutorial: Setup for Android Development
Tutorial: Setup for Android Development Adam C. Champion CSE 5236: Mobile Application Development Autumn 2015 Based on material from C. Horstmann [1], J. Bloch [2], C. Collins et al. [4], M.L. Sichitiu
Develop a Hello World project in Android Studio Capture, process, store, and display an image. Other sensors on Android phones
Kuo-Chin Lien Develop a Hello World project in Android Studio Capture, process, store, and display an image on Android phones Other sensors on Android phones If you have been using Eclipse with ADT, be
Fitness 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
Mobile 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 [email protected] Content Mobile App
Android Application Development: Hands- On. Dr. Jogesh K. Muppala [email protected]
Android Application Development: Hands- On Dr. Jogesh K. Muppala [email protected] Wi-Fi Access Wi-Fi Access Account Name: aadc201312 2 The Android Wave! 3 Hello, Android! Configure the Android SDK SDK
Introduction to Android SDK Jordi Linares
Introduction to Android SDK Introduction to Android SDK http://www.android.com Introduction to Android SDK Google -> OHA (Open Handset Alliance) The first truly open and comprehensive platform for mobile
Sensor 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
Lecture 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
Android Programming: 2D Drawing Part 1: Using ondraw
2012 Marty Hall Android Programming: 2D Drawing Part 1: Using ondraw Originals of Slides and Source Code for Examples: http://www.coreservlets.com/android-tutorial/ Customized Java EE Training: http://courses.coreservlets.com/
Developing Android Applications: Case Study of Course Design
Accepted and presented at the: The 10th International Conference on Education and Information Systems, Technologies and Applications: EISTA 2012 July 17-20, 2012 Orlando, Florida, USA Developing Android
Affdex SDK for Android. Developer Guide For SDK version 1.0
Affdex SDK for Android Developer Guide For SDK version 1.0 www.affdex.com/mobile-sdk 1 August 4, 2014 Introduction The Affdex SDK is the culmination of years of scientific research into emotion detection,
Android 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)
ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android
Why Android? ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android Dr Dimitris C. Dracopoulos A truly open, free development platform based on Linux and open source A component-based
ADITION Android Ad SDK Integration Guide for App Developers
Documentation Version 0.5 ADITION Android Ad SDK Integration Guide for App Developers SDK Version 1 as of 2013 01 04 Copyright 2012 ADITION technologies AG. All rights reserved. 1/7 Table of Contents 1.
Developing Android Apps: Part 1
: Part 1 [email protected] www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA CS 282 Principles of Operating Systems II Systems
Frameworks & 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
SENSORS 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?
How 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
