访问Android位置或加速计数据日志

访问Android位置或加速计数据日志,android,accelerometer,Android,Accelerometer,星期二晚上我出了车祸,我希望这里有人能帮忙 我想知道是否有可能从我的手机收集位置或加速计数据,以帮助确定碰撞时间,这可能与交通灯数据或附近摄像头的视频或其他数据一起使用 为这个稍微偏离主题的请求道歉。这里的帖子是我的一些开发者朋友推荐的。从你的问题来看,是的,可以通过 让加速计随时获取它的值,因为当你的车辆要碰撞时,力会产生非常高的结果 在我看来,你需要使用指南针传感器来帮助它正确计算,(加上GPS传感器,这对计算你当前的速度会有很大帮助) 最后一点,你需要研究车辆碰撞时,撞击力是如何来回移动的

星期二晚上我出了车祸,我希望这里有人能帮忙

我想知道是否有可能从我的手机收集位置或加速计数据,以帮助确定碰撞时间,这可能与交通灯数据或附近摄像头的视频或其他数据一起使用


为这个稍微偏离主题的请求道歉。这里的帖子是我的一些开发者朋友推荐的。

从你的问题来看,是的,可以通过

  • 让加速计随时获取它的值,因为当你的车辆要碰撞时,力会产生非常高的结果

  • 在我看来,你需要使用指南针传感器来帮助它正确计算,(加上GPS传感器,这对计算你当前的速度会有很大帮助)

  • 最后一点,你需要研究车辆碰撞时,撞击力是如何来回移动的,所以大量的实验或良好的研究将对你有很大的帮助

  • 用于启动加速计(大多数移动设备没有此传感器)


    据我所知,加速度计没有被记录。如果你想要它,你就必须实时收集并潜在地存储它。但是我不相信默认情况下会这样做。另外,我想礼貌地告诉你,这个页面是一个编程网站,所以代码问题应该放在这里。也许另一页更适合这个问题,不是粗鲁的。如果你能提出另一个选择,我很乐意把我的问题带到那里。我想如果有人知道的话,应该是那些了解移动设备的代码和存储的人。
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    
        // to get accelerometer censor
        senSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
        senAccelerometer = senSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
        senSensorManager.registerListener(this, senAccelerometer , SensorManager.SENSOR_DELAY_NORMAL);
    }
    
    @Override
    public void onSensorChanged(SensorEvent sensorEvent) {
    Sensor mySensor = sensorEvent.sensor;
    
    if (mySensor.getType() == Sensor.TYPE_ACCELEROMETER) {
        float x = sensorEvent.values[0];
        float y = sensorEvent.values[1];
        float z = sensorEvent.values[2];
    
        long curTime = System.currentTimeMillis();
    
        if ((curTime - lastUpdate) > 100) {
            long diffTime = (curTime - lastUpdate);
            lastUpdate = curTime;
    
            float speed = Math.abs(x + y + z - last_x - last_y - last_z)/ diffTime * 10000;
    
            if (speed > MIGHT_BE_CRASHING_THRESHOLD) {
                // do something
            }
    
            last_x = x;
            last_y = y;
            last_z = z;
        }
    }
    }
    
    @Override
    public void onAccuracyChanged(Sensor sensor, int accuracy) {
    
    }