This commit is contained in:
Jon Atkins 2013-12-20 07:33:46 +00:00
commit 73f894ead2
2 changed files with 6 additions and 5 deletions

View File

@ -87,7 +87,7 @@
<string name="pref_user_loc">Display user location</string> <string name="pref_user_loc">Display user location</string>
<string name="pref_user_loc_sum">Show users position on map</string> <string name="pref_user_loc_sum">Show users position on map</string>
<string name="pref_user_loc_sensor">Use sensor orientation</string> <string name="pref_user_loc_sensor">Use sensor orientation</string>
<string name="pref_user_loc_sensor_sum">Fancier but eats battery packs for breakfast</string> <string name="pref_user_loc_sensor_sum">Experimental! Fancier but eats battery packs for breakfast</string>
<string name="pref_user_zoom">Show zoom control</string> <string name="pref_user_zoom">Show zoom control</string>
<string name="pref_user_zoom_sum">Shows +/- buttons even on multitouch capable devices.</string> <string name="pref_user_zoom_sum">Shows +/- buttons even on multitouch capable devices.</string>
<string name="pref_fullscreen">Hide in fullscreen mode</string> <string name="pref_fullscreen">Hide in fullscreen mode</string>

View File

@ -12,8 +12,9 @@ import android.os.Bundle;
import android.view.Surface; import android.view.Surface;
public class IITC_UserLocation implements LocationListener, SensorEventListener { public class IITC_UserLocation implements LocationListener, SensorEventListener {
private static final double SENSOR_DELAY_USER = 100*1e6;
private boolean mLocationEnabled = false; private boolean mLocationEnabled = false;
private boolean mSensorEnabled = false; private boolean mSensorEnabled = true;
private long mLastUpdate = 0; private long mLastUpdate = 0;
private IITC_Mobile mIitc; private IITC_Mobile mIitc;
private Location mLastLocation = null; private Location mLastLocation = null;
@ -52,8 +53,8 @@ public class IITC_UserLocation implements LocationListener, SensorEventListener
} }
if (mSensorAccelerometer != null && mSensorMagnetometer != null && mSensorEnabled) { if (mSensorAccelerometer != null && mSensorMagnetometer != null && mSensorEnabled) {
mSensorManager.registerListener(this, mSensorAccelerometer, SensorManager.SENSOR_DELAY_UI); mSensorManager.registerListener(this, mSensorAccelerometer, SensorManager.SENSOR_DELAY_NORMAL);
mSensorManager.registerListener(this, mSensorMagnetometer, SensorManager.SENSOR_DELAY_UI); mSensorManager.registerListener(this, mSensorMagnetometer, SensorManager.SENSOR_DELAY_NORMAL);
} }
} }
@ -165,7 +166,7 @@ public class IITC_UserLocation implements LocationListener, SensorEventListener
@Override @Override
public void onSensorChanged(SensorEvent event) { public void onSensorChanged(SensorEvent event) {
// save some battery 10 updates per second should be enough // save some battery 10 updates per second should be enough
if ((event.timestamp - mLastUpdate) < 10*10e6) return; if ((event.timestamp - mLastUpdate) < SENSOR_DELAY_USER) return;
mLastUpdate = event.timestamp; mLastUpdate = event.timestamp;
if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER)