From ec7d210c361618df5e839394e1aaa898618d8ac1 Mon Sep 17 00:00:00 2001 From: Sandor Dornbush Date: Thu, 7 Oct 2010 11:51:54 -0700 Subject: [PATCH] Fix recording error. --- .../services/TrackRecordingService.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/MyTracks/src/com/google/android/apps/mytracks/services/TrackRecordingService.java b/MyTracks/src/com/google/android/apps/mytracks/services/TrackRecordingService.java index 9ae693538..c9c0b000a 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/services/TrackRecordingService.java +++ b/MyTracks/src/com/google/android/apps/mytracks/services/TrackRecordingService.java @@ -638,6 +638,7 @@ public class TrackRecordingService extends Service implements LocationListener { @Override public void onCreate() { + Log.d(MyTracksConstants.TAG, "TrackRecordingService.onCreate"); super.onCreate(); Log.d(MyTracksConstants.TAG, "TrackRecordingService.onCreate"); providerUtils = MyTracksProviderUtils.Factory.get(this); @@ -989,6 +990,35 @@ public class TrackRecordingService extends Service implements LocationListener { } }; + public long startNewTrack() { + Log.d(MyTracksConstants.TAG, "TrackRecordingService.startNewTrack"); + Track track = new Track(); + TripStatistics trackStats = track.getStatistics(); + track.setName("new"); + long startTime = System.currentTimeMillis(); + trackStats.setStartTime(startTime); + track.setStartId(-1); + Uri trackUri = providerUtils.insertTrack(track); + recordingTrackId = Long.parseLong(trackUri.getLastPathSegment()); + track.setId(recordingTrackId); + track.setName(String.format(getString(R.string.new_track), recordingTrackId)); + providerUtils.updateTrack(track); + currentWaypointId = insertStatisticsMarker(null); + isRecording = true; + isMoving = true; + statsBuilder = new TripStatisticsBuilder(); + statsBuilder.resumeAt(startTime); + if (announcementFrequency != -1 && executer != null) { + executer.scheduleTask(announcementFrequency * 60000); + } + length = 0; + showNotification(); + registerLocationListener(); + splitManager.restore(); + signalManager.restore(); + return recordingTrackId; + } + TripStatistics getTripStatistics() { return statsBuilder.getStatistics(); }