forked from upstream-mirrors/OpenTracks
In default track name, add an option for Date + Location
This commit is contained in:
@@ -228,12 +228,14 @@ limitations under the License.
|
|||||||
<item>@string/settings_recording_track_name_location_option</item>
|
<item>@string/settings_recording_track_name_location_option</item>
|
||||||
<item>@string/settings_recording_track_name_date_local_option</item>
|
<item>@string/settings_recording_track_name_date_local_option</item>
|
||||||
<item>@string/settings_recording_track_name_date_iso_8601_option</item>
|
<item>@string/settings_recording_track_name_date_iso_8601_option</item>
|
||||||
|
<item>@string/settings_recording_track_name_date_iso_8601_location_option</item>
|
||||||
<item>@string/settings_recording_track_name_number_option</item>
|
<item>@string/settings_recording_track_name_number_option</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
<string-array name="track_name_values">
|
<string-array name="track_name_values">
|
||||||
<item>@string/settings_recording_track_name_location_value</item>
|
<item>@string/settings_recording_track_name_location_value</item>
|
||||||
<item>@string/settings_recording_track_name_date_local_value</item>
|
<item>@string/settings_recording_track_name_date_local_value</item>
|
||||||
<item>@string/settings_recording_track_name_date_iso_8601_value</item>
|
<item>@string/settings_recording_track_name_date_iso_8601_value</item>
|
||||||
|
<item>@string/settings_recording_track_name_date_iso_8601_location_value</item>
|
||||||
<item>@string/settings_recording_track_name_number_value</item>
|
<item>@string/settings_recording_track_name_number_value</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
<string-array name="waypoint_types">
|
<string-array name="waypoint_types">
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ Google은 이용자에 대한 위치정보의 이용∙제공사실을 위치정
|
|||||||
<string name="settings_map_track_color_mode_fixed_value">FIXED</string>
|
<string name="settings_map_track_color_mode_fixed_value">FIXED</string>
|
||||||
<string name="settings_map_track_color_mode_single_value">SINGLE</string>
|
<string name="settings_map_track_color_mode_single_value">SINGLE</string>
|
||||||
<string name="settings_recording_track_name_date_iso_8601_value">DATE_ISO_8601</string>
|
<string name="settings_recording_track_name_date_iso_8601_value">DATE_ISO_8601</string>
|
||||||
|
<string name="settings_recording_track_name_date_iso_8601_location_value">DATE_ISO_8601_LOCATION</string>
|
||||||
<string name="settings_recording_track_name_date_local_value">DATE_LOCAL</string>
|
<string name="settings_recording_track_name_date_local_value">DATE_LOCAL</string>
|
||||||
<string name="settings_recording_track_name_location_value">LOCATION</string>
|
<string name="settings_recording_track_name_location_value">LOCATION</string>
|
||||||
<string name="settings_recording_track_name_number_value">NUMBER</string>
|
<string name="settings_recording_track_name_number_value">NUMBER</string>
|
||||||
|
|||||||
@@ -1705,6 +1705,14 @@ limitations under the License.
|
|||||||
Character limit: ~23 (1 line)">
|
Character limit: ~23 (1 line)">
|
||||||
GPS accuracy
|
GPS accuracy
|
||||||
</string>
|
</string>
|
||||||
|
<string name="settings_recording_track_name_date_iso_8601_location_option"
|
||||||
|
translation_description="In the 'Recording' settings, the option in the 'Default track name'
|
||||||
|
setting to use the track starting time in the ISO-8601 format and the track starting location
|
||||||
|
as the default track name.
|
||||||
|
|
||||||
|
Character limit: ~20 (1 line)">
|
||||||
|
Date (ISO 8601) + Location
|
||||||
|
</string>
|
||||||
<string name="settings_recording_track_name_date_iso_8601_option"
|
<string name="settings_recording_track_name_date_iso_8601_option"
|
||||||
translation_description="In the 'Recording' settings, the option in the 'Default track name'
|
translation_description="In the 'Recording' settings, the option in the 'Default track name'
|
||||||
setting to use the track starting time in the ISO-8601 format as the default track name.
|
setting to use the track starting time in the ISO-8601 format as the default track name.
|
||||||
|
|||||||
@@ -773,9 +773,10 @@ public class TrackRecordingService extends Service {
|
|||||||
updateRecordingTrack(track, myTracksProviderUtils.getLastTrackPointId(trackId), false);
|
updateRecordingTrack(track, myTracksProviderUtils.getLastTrackPointId(trackId), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
String trackName = TrackNameUtils.getTrackName(
|
String trackName = TrackNameUtils.getTrackName(this, trackId,
|
||||||
this, -1L, -1L, myTracksProviderUtils.getFirstValidTrackPoint(trackId));
|
track.getTripStatistics().getStartTime(),
|
||||||
if (trackName != null) {
|
myTracksProviderUtils.getFirstValidTrackPoint(trackId));
|
||||||
|
if (trackName != null && !trackName.equals(track.getName())) {
|
||||||
track.setName(trackName);
|
track.setName(trackName);
|
||||||
myTracksProviderUtils.updateTrack(track);
|
myTracksProviderUtils.updateTrack(track);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,44 +48,39 @@ public class TrackNameUtils {
|
|||||||
* @param context the context
|
* @param context the context
|
||||||
* @param trackId the track id
|
* @param trackId the track id
|
||||||
* @param startTime the track start time
|
* @param startTime the track start time
|
||||||
* @param location the track location
|
* @param location the track location, can be null
|
||||||
*/
|
*/
|
||||||
public static String getTrackName(
|
public static String getTrackName(
|
||||||
Context context, long trackId, long startTime, Location location) {
|
Context context, long trackId, long startTime, Location location) {
|
||||||
String trackName = PreferencesUtils.getString(context, R.string.track_name_key,
|
String trackName = PreferencesUtils.getString(
|
||||||
PreferencesUtils.TRACK_NAME_DEFAULT);
|
context, R.string.track_name_key, PreferencesUtils.TRACK_NAME_DEFAULT);
|
||||||
|
|
||||||
if (trackName.equals(
|
if (trackName.equals(
|
||||||
|
context.getString(R.string.settings_recording_track_name_location_value))) {
|
||||||
|
// Use the startTime if location is null
|
||||||
|
return location != null ? getReverseGeoCoding(context, location)
|
||||||
|
: StringUtils.formatDateTime(context, startTime);
|
||||||
|
} else if (trackName.equals(
|
||||||
context.getString(R.string.settings_recording_track_name_date_local_value))) {
|
context.getString(R.string.settings_recording_track_name_date_local_value))) {
|
||||||
if (startTime == -1L) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return StringUtils.formatDateTime(context, startTime);
|
return StringUtils.formatDateTime(context, startTime);
|
||||||
} else if (trackName.equals(
|
} else if (trackName.equals(
|
||||||
context.getString(R.string.settings_recording_track_name_date_iso_8601_value))) {
|
context.getString(R.string.settings_recording_track_name_date_iso_8601_value))) {
|
||||||
if (startTime == -1L) {
|
return new SimpleDateFormat(ISO_8601_FORMAT, Locale.US).format(startTime);
|
||||||
return null;
|
|
||||||
}
|
|
||||||
SimpleDateFormat dateFormat = new SimpleDateFormat(ISO_8601_FORMAT, Locale.US);
|
|
||||||
return dateFormat.format(startTime);
|
|
||||||
} else if (trackName.equals(
|
} else if (trackName.equals(
|
||||||
context.getString(R.string.settings_recording_track_name_number_value))) {
|
context.getString(R.string.settings_recording_track_name_date_iso_8601_location_value))) {
|
||||||
if (trackId == -1L) {
|
StringBuffer value = new StringBuffer(
|
||||||
return null;
|
new SimpleDateFormat(ISO_8601_FORMAT, Locale.US).format(startTime));
|
||||||
}
|
|
||||||
return context.getString(R.string.track_name_format, trackId);
|
|
||||||
} else {
|
|
||||||
// trackName equals settings_recording_track_name_location_value or any
|
|
||||||
// value
|
|
||||||
if (location != null) {
|
if (location != null) {
|
||||||
return getReverseGeoCoding(context, location);
|
String address = getReverseGeoCoding(context, location);
|
||||||
} else {
|
if (address != null && !address.equals("")) {
|
||||||
// Use the startTime if available
|
value.append(" " + address);
|
||||||
if (startTime != -1L) {
|
|
||||||
return StringUtils.formatDateTime(context, startTime);
|
|
||||||
}
|
}
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
|
return value.toString();
|
||||||
|
} else {
|
||||||
|
// R.string.settings_recording_track_name_number_value)
|
||||||
|
return context.getString(R.string.track_name_format, trackId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user