Sensors Usage Guidelines
The following steps use the sensor whose sensorTypeId is 0 as an example. The guidelines for other sensor types are similar.
How to Use
- Import the required header files.
#include "sensor_agent.h"
#include "sensor_agent_type.h"
- Create a sensor callback.
void SensorDataCallbackImpl(SensorEvent *event)
{
if(event == NULL){
return;
}
float *sensorData=(float *)event->data;
}
NOTE: The callback must be of the RecordSensorCallback type.
- Obtain the list of sensors supported by the device.
SensorInfo *sensorInfo = (SensorInfo *)NULL;
int32_t count = 0;
int32_t ret = GetAllSensors(&sensorInfo, &count);
- Create a sensor user.
SensorUser sensorUser;
sensorUser.callback = SensorDataCallbackImpl; // Assign the created callback SensorDataCallbackImpl to the member variable callback.
- Enable the sensor.
int32_t ret = ActivateSensor(0, &sensorUser);
- Subscribe to sensor data.
int32_t ret = SubscribeSensor(0, &sensorUser);
NOTE: Till now, you can obtain the sensor data via the callback.
- Unsubscribe from the sensor data.
int32_t ret = UnsubscribeSensor(0, &sensorUser);
- Disable the sensor.
int32_t ret = DeactivateSensor(0, &sensorUser);