У меня возникла какая-то странная проблема с моим желанием HTC.
В настоящее время я тестирую некоторые вещи opengl, используя акселерометр и геомагнитные датчики.
кажется, что они оба иногда возвращаются (довольно много) одинаковых значений.
я получил это на моем onSensorChanged ()
if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
gravity = event.values;
}
if (event.sensor.getType() == Sensor.TYPE_MAGNETIC_FIELD) {
geomagnetic = event.values;
}
, и я не знаю почему, но когда я отключаю USB (к компьютеру), этостановится еще хуже (я использую эти значения, чтобы вращать камеру вокруг такого объекта, как карта неба, и когда я отключаю его от сети, это выглядит так, как будто значения верны примерно 1 раз в 2 секунды ~).
, а иногда и (с подключенным USB и просмотром logcat) он работает нормально и никогда не получает одинаковые значения от двух датчиков.
это не мое устройство, другая программа, такая как карта неба, работает нормально, но я не получаючто я делаю не такя никогда не смешивал два массива: гравитационный и геомагнитный, они глобальные и используются с SensorManager.getRotationMatrix (R, гравитационный, геомагнитный).
Мне интересно, не получаю ли я значения слишком быстро, нодаже если я определю SENSOR_DELAY_UI в слушателе, это та же самая история.