forked from upstream-mirrors/OpenTracks
Merging fixes.
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.google.android.maps.mytracks"
|
||||
android:versionCode="17"
|
||||
android:versionName="1.0.16">
|
||||
android:versionCode="18"
|
||||
android:versionName="1.0.17">
|
||||
<application android:icon="@drawable/arrow_icon"
|
||||
android:label="@string/app_name"
|
||||
android:backupAgent="com.google.android.apps.mytracks.io.backup.MyTracksBackupAgent">
|
||||
|
||||
@@ -219,7 +219,7 @@ limitations under the License.
|
||||
<string name="settings_modular_stats_display_summary_on">The stats screen is split in various modes.</string>
|
||||
<string name="settings_modular_stats_display_summary_off">Display all stats on one screen</string>
|
||||
|
||||
<string name="settings_backup">Backup</string>
|
||||
<string name="settings_backup">Backup (BETA)</string>
|
||||
<string name="settings_sd_backup">SD Card Backup</string>
|
||||
<string name="settings_backup_to_sd">Backup now</string>
|
||||
<string name="settings_backup_to_sd_summary">Write a full copy of all your tracks and settings to the SD card</string>
|
||||
|
||||
@@ -38,7 +38,7 @@ public abstract class MyTracksConstants {
|
||||
* Name of the top-level directory inside the SD card where our files will
|
||||
* be read from/written to.
|
||||
*/
|
||||
public static final Object SDCARD_TOP_DIR = "MyTracks";
|
||||
public static final String SDCARD_TOP_DIR = "MyTracks";
|
||||
|
||||
/**
|
||||
* The API level of the Android version we're being run under.
|
||||
|
||||
@@ -29,38 +29,39 @@ import com.google.android.maps.mytracks.R;
|
||||
*/
|
||||
public class PreferenceManager {
|
||||
private TrackRecordingService service;
|
||||
private String announcement_frequency_key;
|
||||
private String max_recording_distance_key;
|
||||
private String metric_units_key;
|
||||
private String min_recording_distance_key;
|
||||
private String min_recording_interval_key;
|
||||
private String min_required_accuracy_key;
|
||||
private String recording_track_key;
|
||||
private String signal_sampling_frequency_key;
|
||||
private String split_frequency_key;
|
||||
|
||||
private final String announcementFrequencyKey;
|
||||
private final String maxRecordingDistanceKey;
|
||||
private final String metricUnitsKey;
|
||||
private final String minRecordingDistanceKey;
|
||||
private final String minRecordingIntervalKey;
|
||||
private final String minRequiredAccuracyKey;
|
||||
private final String recordingTrackKey;
|
||||
private final String signalSamplingFrequencyKey;
|
||||
private final String splitFrequencyKey;
|
||||
|
||||
public PreferenceManager(TrackRecordingService service) {
|
||||
this.service = service;
|
||||
announcement_frequency_key =
|
||||
service.getString(R.string.announcement_frequency_key);
|
||||
max_recording_distance_key =
|
||||
service.getString(R.string.max_recording_distance_key);
|
||||
metric_units_key =
|
||||
service.getString(R.string.metric_units_key);
|
||||
min_recording_distance_key =
|
||||
|
||||
announcementFrequencyKey =
|
||||
service.getString(R.string.announcement_frequency_key);
|
||||
maxRecordingDistanceKey =
|
||||
service.getString(R.string.max_recording_distance_key);
|
||||
metricUnitsKey =
|
||||
service.getString(R.string.metric_units_key);
|
||||
minRecordingDistanceKey =
|
||||
service.getString(R.string.min_recording_distance_key);
|
||||
min_recording_interval_key =
|
||||
service.getString(R.string.min_recording_interval_key);
|
||||
min_required_accuracy_key =
|
||||
service.getString(R.string.min_required_accuracy_key);
|
||||
split_frequency_key =
|
||||
service.getString(R.string.split_frequency_key);
|
||||
signal_sampling_frequency_key =
|
||||
service.getString(R.string.signal_sampling_frequency_key);
|
||||
recording_track_key =
|
||||
service.getString(R.string.recording_track_key);
|
||||
minRecordingIntervalKey =
|
||||
service.getString(R.string.min_recording_interval_key);
|
||||
minRequiredAccuracyKey =
|
||||
service.getString(R.string.min_required_accuracy_key);
|
||||
splitFrequencyKey =
|
||||
service.getString(R.string.split_frequency_key);
|
||||
signalSamplingFrequencyKey =
|
||||
service.getString(R.string.signal_sampling_frequency_key);
|
||||
recordingTrackKey =
|
||||
service.getString(R.string.recording_track_key);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Notifies that preferences have changed.
|
||||
* Call this with key == null to update all preferences in one call.
|
||||
@@ -76,24 +77,24 @@ public class PreferenceManager {
|
||||
return;
|
||||
}
|
||||
|
||||
if (key == null || key.equals(min_recording_distance_key)) {
|
||||
if (key == null || key.equals(minRecordingDistanceKey)) {
|
||||
service.setMinRecordingDistance(
|
||||
sharedPreferences.getInt(
|
||||
min_recording_distance_key,
|
||||
minRecordingDistanceKey,
|
||||
MyTracksSettings.DEFAULT_MIN_RECORDING_DISTANCE));
|
||||
Log.d(MyTracksConstants.TAG,
|
||||
"TrackRecordingService: minRecordingDistance = "
|
||||
+ service.getMinRecordingDistance());
|
||||
}
|
||||
if (key == null || key.equals(max_recording_distance_key)) {
|
||||
if (key == null || key.equals(maxRecordingDistanceKey)) {
|
||||
service.setMaxRecordingDistance(
|
||||
sharedPreferences.getInt(
|
||||
max_recording_distance_key,
|
||||
maxRecordingDistanceKey,
|
||||
MyTracksSettings.DEFAULT_MAX_RECORDING_DISTANCE));
|
||||
}
|
||||
if (key == null || key.equals(min_recording_interval_key)) {
|
||||
if (key == null || key.equals(minRecordingIntervalKey)) {
|
||||
int minRecordingInterval = sharedPreferences.getInt(
|
||||
min_recording_interval_key,
|
||||
minRecordingIntervalKey,
|
||||
MyTracksSettings.DEFAULT_MIN_RECORDING_INTERVAL);
|
||||
switch (minRecordingInterval) {
|
||||
case -2:
|
||||
@@ -117,33 +118,34 @@ public class PreferenceManager {
|
||||
new AbsoluteLocationListenerPolicy(minRecordingInterval * 1000));
|
||||
}
|
||||
}
|
||||
if (key == null || key.equals(min_required_accuracy_key)) {
|
||||
if (key == null || key.equals(minRequiredAccuracyKey)) {
|
||||
service.setMinRequiredAccuracy(
|
||||
sharedPreferences.getInt(
|
||||
min_required_accuracy_key,
|
||||
minRequiredAccuracyKey,
|
||||
MyTracksSettings.DEFAULT_MIN_REQUIRED_ACCURACY));
|
||||
}
|
||||
if (key == null || key.equals(announcement_frequency_key)) {
|
||||
if (key == null || key.equals(announcementFrequencyKey)) {
|
||||
service.setAnnouncementFrequency(
|
||||
sharedPreferences.getInt(announcement_frequency_key,
|
||||
sharedPreferences.getInt(announcementFrequencyKey,
|
||||
-1));
|
||||
}
|
||||
if (key == null || key.equals(recording_track_key)) {
|
||||
if (key == null || key.equals(recordingTrackKey)) {
|
||||
service.setRecordingTrackId(
|
||||
sharedPreferences.getLong(recording_track_key, -1));
|
||||
sharedPreferences.getLong(recordingTrackKey, -1));
|
||||
}
|
||||
if (key == null || key.equals(split_frequency_key)) {
|
||||
if (key == null || key.equals(splitFrequencyKey)) {
|
||||
service.getSplitManager().setSplitFrequency(
|
||||
sharedPreferences.getInt(split_frequency_key, 0));
|
||||
sharedPreferences.getInt(splitFrequencyKey, 0));
|
||||
}
|
||||
if (key == null || key.equals(signal_sampling_frequency_key)) {
|
||||
if (key == null || key.equals(signalSamplingFrequencyKey)) {
|
||||
service.getSignalManager().setFrequency(
|
||||
sharedPreferences.getInt(
|
||||
signal_sampling_frequency_key, -1), service);
|
||||
signalSamplingFrequencyKey, -1), service);
|
||||
}
|
||||
if (key == null || key.equals(metric_units_key)) {
|
||||
service.getSplitManager().setMetricUnits(sharedPreferences.getBoolean(
|
||||
metric_units_key, true));
|
||||
if (key == null || key.equals(metricUnitsKey)) {
|
||||
service.getSplitManager().setMetricUnits(
|
||||
sharedPreferences.getBoolean(
|
||||
metricUnitsKey, true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ public class SplitManager {
|
||||
if (splitFrequency >= 0) {
|
||||
nextSplitDistance = Double.MAX_VALUE;
|
||||
Log.d(MyTracksConstants.TAG,
|
||||
"SplitManager: Distance splits dissabled.");
|
||||
"SplitManager: Distance splits disabled.");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -85,19 +85,9 @@ public class ExtremityMonitor {
|
||||
/**
|
||||
* Sets the minimum and maximum values.
|
||||
*/
|
||||
public void set(double newMin, double newMax) {
|
||||
// If the min is greater than the max and they were actually initialized to
|
||||
// some values, then we have a problem.
|
||||
if (newMin > newMax
|
||||
&& !(Double.isInfinite(newMax) || ((int) newMax == Integer.MIN_VALUE))
|
||||
&& !(Double.isInfinite(newMin)
|
||||
|| ((int) newMin == Integer.MAX_VALUE))) {
|
||||
throw new IllegalArgumentException(
|
||||
"Invalid min: " + newMin + " vs max:" + newMax);
|
||||
}
|
||||
|
||||
this.min = newMin;
|
||||
this.max = newMax;
|
||||
public void set(double min, double max) {
|
||||
this.min = min;
|
||||
this.max = max;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user