我正在做一个从智能手机中的不同传感器收集数据的应用程序。我的疑惑是:我如何收集不同的数据?我的目标是创建一个数组矩阵。在同一时间的每一行中都有来自信号的数据捕获。 如果我使用" timestamp"在上面的代码中,它可以吗?我不确定,因为时间戳的定义是"事件发生的时间",但问题是事件只能在一个传感器中发生。真诚地,我有点困惑。
mSensorManager = (SensorManager) this
.getSystemService(Context.SENSOR_SERVICE);
mSensorListener = new SensorEventListener() {
@Override
public void onAccuracyChanged(Sensor arg0, int arg1) {
}`enter code here`
@Override
public void onSensorChanged(SensorEvent event) {
Sensor sensor = event.sensor;
if (sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
//TODO: get values
}else if (sensor.getType() == Sensor.TYPE_ORIENTATION) {
//TODO: get values
}
}
}
答案 0 :(得分:0)
我认为你可以从TreeMap中受益。在您的情况下,我将其视为TreeMap<Long, Map<Integer, Float>>
TreeMap会将时间戳(您可以使用System.currentTimeMillis()
映射到在那些时刻进行的任何测量。事实上,它是TreeMap将根据键对条目进行排序(因此它们将是以相对于时间戳的升序排列)
测量值是Map<Integer, Float>
,它将测量值的传感器类型映射到测量值(我将假设为Float)。