sensors in android (old)
DESCRIPTION
TRANSCRIPT
![Page 1: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/1.jpg)
Android Application Development
Sensor Programming
Ahsanul Karim [email protected]
Sentinel Solutions Ltd.http://www.sentinelbd.com
![Page 2: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/2.jpg)
Sensor ProgrammingAndroid Sensors1. Android phones support different sensors. 2. Today we write test code that reports which sensors our Android device
supports. 3. Unfortunately, the emulator supports none upto SDK 1.5.4. But we’ll see how many sensors are supported
in real device5. We’ll create a project named SensorTest for this.
We’ll test following sensor list:
1. Accelerometer2. Light3. Magnetic Field4. Orientation5. Orientation Raw6. Proximity7. Temperature8. Tricorder
This is for SDK 1.5
![Page 3: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/3.jpg)
Sensor ProgrammingAndroid Sensors TestWe create a project named
SensorTest
![Page 4: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/4.jpg)
Sensor ProgrammingAndroid Sensors Test1. We change our Activity to a
ListActivity
![Page 5: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/5.jpg)
Sensor ProgrammingAndroid Sensors Test2. We’ll use SensorManager class
3. So we declare a List for SensorInfo 4. SensorInfo is a class defined by us which holds the sensor name and a boolean value whether its supported or not.5. So we create a SensorInfo class
![Page 6: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/6.jpg)
Sensor ProgrammingAndroid Sensors Test6. Let’s get back to our
ListActivity
7. We’ll now populate the list with all sensors and check whether they are enabled
![Page 7: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/7.jpg)
Sensor ProgrammingAndroid Sensors Test
8. We declare a List of SensorInfo
9. Now we check each sensor one by one: First Accelerometer
10. Now we check each sensor one by one: then Light
![Page 8: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/8.jpg)
Sensor ProgrammingAndroid Sensors Test11. Now we check each sensor one by
one: First Magnetic field
12. Now we check each sensor one by one: then Orientation
![Page 9: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/9.jpg)
Sensor ProgrammingAndroid Sensors Test13. Now we check each sensor one by
one: First Orientation Raw
14. Now we check each sensor one by one: then Proximity
![Page 10: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/10.jpg)
Sensor ProgrammingAndroid Sensors Test15. Now we check each sensor one by
one: First Temperature
16. Now we check each sensor one by one: then Tricorder
![Page 11: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/11.jpg)
Sensor ProgrammingAndroid Sensors Test17. To show the list we do the following by setting
adapter
Now we run the app in emulator.
Except Accelerometer we see all sensors are disabledMay be in later SDKs we’ll get more enabled sensors
![Page 12: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/12.jpg)
Sensor ProgrammingAndroid Sensors TestLets run this in Galaxy
tab We see the following are enabled:
1. Accelerometer2. Light3. Magnetic Field4. Orientation5. Orientation Raw6. Proximity
So the sensor support varies from Vendor to vendor and model to model
![Page 13: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/13.jpg)
Sensor ProgrammingAndroid Sensor Programming
As we see that Accelerometer is the 1. most commonly used sensor and also 2. it has many applications in games development, We’ll see and example of Sensor programming with
Accelerometer
And as we don’t have option to move the emulator we may have to use a
sensor simulator which will simulate the sensor data.So we download the library for sensorsimulation at:http://openintents.googlecode.com/files/sensorsimulator-1.1.0-rc1.ziphttp://code.google.com/p/openintents/downloads/detail?name=sensorsimulator-1.1.0-rc1.
zip&can=2&q=http://code.google.com/p/openintents/wiki/SensorSimulator
We can follow their instruction to use it.
But here, we’ll do it in our real device, so simulator will not be required
![Page 14: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/14.jpg)
Sensor ProgrammingAndroid Sensor ProgrammingLet’s create a project as an
exampleWe create a layout with a simple image which will move according to the Accelerometer:
![Page 15: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/15.jpg)
Sensor ProgrammingAndroid Sensor Programming
Our Activity:
![Page 16: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/16.jpg)
Sensor ProgrammingAndroid Sensor Programming
Adding SensorEventListener inner class with data update
![Page 17: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/17.jpg)
Sensor ProgrammingAndroid Sensor ProgrammingDeclaring variables and registering
listener
![Page 18: Sensors in Android (old)](https://reader034.vdocuments.site/reader034/viewer/2022042623/540738528d7f7288088b4a0f/html5/thumbnails/18.jpg)
Sensor ProgrammingAndroid Sensor Programming
Register and unregister listener on activity onStop and onResume: