Bài giảng Lập trình cho thiết bị di động - Bài 7: Thao tác với thiết bị cảm ứng

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.

 

pptx34 trang | Chuyên mục: Android | Chia sẻ: dkS00TYs | Lượt xem: 2260 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Lập trình cho thiết bị di động - Bài 7: Thao tác với thiết bị cảm ứng, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Click to edit Master title style Click to edit Master text styles Second level Third level Fourth level Fifth level 05/09/2013 ‹#› 1 1. Sensors 2. Monitoring the Battery 2 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:  This tool simulates accelerometer, compass, and temperature sensors, and it transmits data to the emulator. Android devices have a variety of sensors : 3 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. 4 1. Sensors Here are the major classes related to sensor. Class Comment Sensor Class representing a sensor. Use getSensorList(int) to get the list of available Sensors. SensorEvent This class represents a Sensor event and holds informations such as the sensor's type, the time-stamp, accuracy and of course the sensor's data. SensorEventListener An interface: Used for receiving notifications from the SensorManager when sensor values have changed. SensorManager SensorManager lets you access the device's sensors. Get an instance of this class by calling Context.getSystemService() with the argument SENSOR_SERVICE. 5 1. Sensors Working with Sensor To get a Sensor, you need to use SensorManager. 6 1. Sensors Working with Sensor Register EventListener to it. 7 1. Sensors Working with Sensor UnRegister EventListener. Register in the onResume method and Unregister in the onPause method 8 1. Sensors SensorManager.SENSOR_DELAY Frequence Comment SENSOR_DELAY_FASTEST get sensor data as fast as possible SENSOR_DELAY_NORMAL rate (default) suitable for screen orientation changes SENSOR_DELAY_GAME rate suitable for games SENSOR_DELAY_UI rate suitable for the user interface 9 1. Sensors Receive SensorEvent Normally, onSensorChanged is the method in which we need to put your sensor handle logic. 10 1. Sensors SensorEvent Type Name Comment public int accuracy The accuracy of this event. public Sensor sensor The sensor that generated this event. public long timestamp The time in nanosecond at which the event happened public final float[] values The length and contents of the values array depends on which sensor type is being monitored. 11 1. Sensors Sensor.TYPE_TEMPERATURE 12 1. Sensors Sensor.TYPE_TEMPERATURE 13 1. Sensors Sensor.TYPE_LIGHT 14 1. Sensors Sensor.TYPE_LIGHT 15 1. Sensors Sensor.TYPE_PRESSURE 16 1. Sensors Sensor.TYPE_PRESSURE 17 1. Sensors Sensor. TYPE_PROXIMITY 18 1. Sensors Sensor. TYPE_PROXIMITY 19 1. Sensors Sensor. TYPE_PROXIMITY 20 1. Sensors Sensor.TYPE_ACCELEROMETER 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 21 1. Sensors Sensor.TYPE_ACCELEROMETER Use to Accelerometer to detect SHAKING Device 22 1. Sensors Sensor.TYPE_ACCELEROMETER 23 1. Sensors Sensor.TYPE_ACCELEROMETER 24 1. Sensors Sensor.TYPE_GYROSCOPE 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 25 1. Sensors Sensor.TYPE_GYROSCOPE 26 1. Sensors Sensor.TYPE_GYROSCOPE 27 1. Sensors Sensor.TYPE_ORIENTATION 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. 28 1. Sensors Sensor.TYPE_ORIENTATION 29 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 30 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: 31 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 32 2. Monitoring the Battery 33 2. Monitoring the Battery 34 2. Monitoring the Battery END 35 

File đính kèm:

  • pptx7 - THAO TÁC VỚI THIẾT BỊ CẢM ỨNG.pptx
Tài liệu liên quan