【问题标题】:How to store a Light sensor value in an array for a long time ? 1 sample / 2sec如何将光传感器值长时间存储在数组中? 1 个样本/2 秒
【发布时间】:2016-11-10 10:21:01
【问题描述】:

我正在为个人项目开发应用程序,稍后我需要在 Matlab 上处理数据(用于电源要求)。因此,我的目标是每两秒在一个数组中“存储”一个光传感器的值?现在,我可以实时正确显示传感器的值,根据智能手机的默认频率显示在屏幕上!我是Android新手,每天都在学习哈哈!我只是被困在那里......最终目标是将数据发送到数据库并稍后创建一个图表......显示一个地方在时间上的光强度......什么是最好的存储请?最好的问候,

private final SensorEventListener LightSensorListener = new SensorEventListener() {
    @Override
    public void onSensorChanged(SensorEvent event) {
        if(event.sensor.getType() == Sensor.TYPE_LIGHT){
            textLight_reading.setText("LIGHT : " + event.values[0]);
        }
    }
    @Override
    public void onAccuracyChanged(Sensor sensor, int accuracy) {

    }
};

这是代码的另一部分:

textLight_available = (TextView) findViewById(R.id.LIGHT_available);
    textLight_reading = (TextView) findViewById(R.id.LIGHT_reading);


    SensorManager mySensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
    Sensor LightSensor = mySensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);

    super.onResume();
    if (LightSensor != null) {
        textLight_available.setText("LIGHT SENSOR ON");
        mySensorManager.registerListener(LightSensorListener, LightSensor,
                SensorManager.SENSOR_DELAY_NORMAL);
    } else {
        textLight_available.setText("LIGHT SENSOR OFF");
    }

【问题讨论】:

  • Android官方文档中的Storage Options ...

标签: android arrays storage android-sensors sampling


【解决方案1】:

根据您的描述,您需要每两秒存储一次数据,我猜这将是大量数据,具体取决于时间

首先,您可以创建一个数据对象数组,并继续每 2 秒向其中添加项目,并继续每分钟将该数组推送到 sqlite 数据库以进行持久存储

如果你每两秒编写一次 sqlite db 可能会导致问题

编码愉快:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-04
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    • 2022-09-22
    • 2011-09-20
    相关资源
    最近更新 更多