Sunteți pe pagina 1din 35

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

2. Monitoring
the Battery
1

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors
The emulator does not provide any sensor data. All sensor
testing must be done on a physical device. Alternatively,
OpenIntents.org also provides a handy Sensor Simulator:
http://code.google.com/p/openintents/wiki/SensorSimulator
This tool simulates accelerometer, compass, and
temperature sensors, and it transmits data to the emulator.
Android devices have a variety of sensors :

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors
TYPE_ACCELEROMETER: Measures acceleration in three
directions; values are in SI units (m/s2).
TYPE_GYROSCOPE: Measures angular orientation in three
directions; values are angles in degrees.
TYPE_LIGHT: Measures ambient light; values are in SI lux
units.
TYPE_MAGNETIC_FIELD: Measures magnetism in three
directions; the compass values are in micro-Tesla (uT).
TYPE_PRESSURE: Measures barometric pressure.
TYPE_PROXIMITY: Measures the distance to an object;
values are in centimeters, or near versus far.
TYPE_RELATIVE_HUMIDITY: Measures the relative humidity.
TYPE_AMBIENT_TEMPERATURE: Measures temperature.
3

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors
Here are the major classes related to sensor.
Class

Sensor

Comment

Class representing a sensor. Use


getSensorList(int) to get the list of
available Sensors.

SensorEv This class represents a Sensor event


and holds informations such as the
ent

sensor's type, the time-stamp, accuracy


and of course the sensor's data.

SensorEventLis
tener

An interface: Used for receiving


notifications from the SensorManager
when sensor values have changed.

SensorMan SensorManager lets you access the


ager
device's sensors. Get an instance of this
class by calling
4

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Working with Sensor

To get a Sensor, you need to use SensorManager.

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Working with Sensor

Register EventListener to it.

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Working with Sensor

UnRegister EventListener.

Register in the onResume method and


Unregister in the onPause method

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors
SensorManager.SENSOR_DELAY
Frequence

Comment

SENSOR_DELAY_FASTES get sensor data as fast as


T
possible
SENSOR_DELAY_NORMA rate (default) suitable for
L
screen orientation
changes
SENSOR_DELAY_GAME
SENSOR_DELAY_UI

rate suitable for games


rate suitable for the user
interface

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors
Receive SensorEvent
Normally, onSensorChanged is the method in which
we need to put your sensor handle logic.

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors
SensorEvent
Type
Name
Comment
public int accuracy The accuracy of this event.
publicSensor sensor
public long timestam
p
public final values
float[]

The sensor that generated


this event.
The time in nanosecond at
which the event happened
The length and contents of
thevaluesarray depends on
whichsensortype is being
monitored.
10

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_TEMPERATUR
E

11

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_TEMPERATUR
E

12

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_LIGHT

13

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_LIGHT

14

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_PRESSURE

15

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_PRESSURE

16

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor. TYPE_PROXIMITY

17

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor. TYPE_PROXIMITY

18

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor. TYPE_PROXIMITY

19

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_ACCELER
OMETER
The accelerometer values are
represented in SI units
(m/s2). The device at right has the bottom of the device
screen pointing toward the center of gravity. Gravity on
Earth is 9.80665 m/s2.
All values are in SI units (m/s2)
values[0]: Acceleration minus Gx on
the x-axis
values[1]: Acceleration minus Gy on
the y-axis
values[2]: Acceleration minus Gz on
the z-axis

20

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_ACCELER
Use to Accelerometer to OMETER
detect SHAKING
Device

21

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_ACCELER
OMETER

22

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_ACCELER
OMETER

23

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_GYROSCO
PE
measure, or maintain, the orientation
of a device.
rate of rotation around a particular axis

values[0]: Angular speed around the x-axis


values[1]: Angular speed around the y-axis
values[2]: Angular speed around the z-axis

24

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_GYROSCO
PE

25

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_GYROSCO
PE

26

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_ORIENTATI
ON
All values are angles in degrees:
values[0]: Azimuth, angle between the
magnetic north direction and the y-axis,
around the z-axis (0 to 359). 0=North,
90=East, 180=South, 270=West
values[1]: Pitch, rotation around x-axis (-180
to 180), with positive values when the z-axis
moves toward the y-axis.
values[2]: Roll, rotation around y-axis (-90 to
90), with positive values when the x-axis
moves toward the z-axis.
27

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors

Sensor.TYPE_ORIENTATI
ON

28

DONG NAI UNIVERSITY OF TECHNOLOGY

1. Sensors
Exercise : Using Sensors Accelerometor and
Proximity to build an AlbumManager
application:
- Nice GUI to display Pictures
- When Device was shaken to Left open the
Previous Picture
- When Device was shaken to Right open the Next
Picture
- When Proximity is active and event.values[0]==0.0
Close the AlbumManager application

29

DONG NAI UNIVERSITY OF TECHNOLOGY

2. Monitoring the Battery


A monitoring application can reduce the monitoring
frequency when the battery is low and can increase it if
the device is powered by an external power source. The
battery levels can also help indicate the efficiency of an
application, allowing developers to find areas where
behavior can be modified to improve battery life, which
would be appreciated by users.
To monitor the battery, the application must have the
BATTERY_STATS permission:
<uses-permission android:name=
"android.permission.BATTERY_STATS"/>

30

DONG NAI UNIVERSITY OF TECHNOLOGY

2. Monitoring the Battery


Then the application needs to register for a particular
BroadcastIntent. In this case, it must be
Intent.ACTION_BATTERY_CHANGED.

Emulator

Physical Device
31

DONG NAI UNIVERSITY OF TECHNOLOGY

2. Monitoring the Battery

32

DONG NAI UNIVERSITY OF TECHNOLOGY

2. Monitoring the Battery

33

DONG NAI UNIVERSITY OF TECHNOLOGY

2. Monitoring the Battery

34

DONG NAI UNIVERSITY OF TECHNOLOGY

END
35

S-ar putea să vă placă și