4

Nexus One の光センサーの値を読み取ろうとしていますが、次の値しか取得できません。

10.0

225.0

いくつかのケースでは、いくつかの値がはるかに高くなります。

使用されたコード:

sensorManager = (SensorManager) context
                .getSystemService(Context.SENSOR_SERVICE);
        sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);

        listener = new SensorEventListener() {

            @Override
            public void onAccuracyChanged(Sensor sensor, int accuracy) {
            }

            @Override
            public void onSensorChanged(SensorEvent event) {
                 Log.d(Constants.TAG, "Brightness: " + event.values[0]);

            }

        };
        sensorManager.registerListener(listener, sensor,
                SensorManager.SENSOR_DELAY_NORMAL);

    }

Nexus One または別の Android デバイスの光センサーを使用した経験のある人はいますか? 私のコードは値を読み取る正しい方法ですか? より正確な値を取得するにはどうすればよいですか?

4

1 に答える 1

1

コードは正常に見えます。私は次のような値を受け取っていました:10、225、320、640、1280、2600、3200、10240。しかし、より高い値を受け取るには、デバイスを太陽に向ける必要がありました。

編集:Android APIを使用して携帯電話で取得できる光センサーの特性から-10240は、このセンサーによって返される可能性のある最大値です。

于 2010-10-22T11:58:27.290 に答える