From ebe8cbc7981977c2e7c83987f36f16a94ce39b97 Mon Sep 17 00:00:00 2001 From: Rodrigo Damazio Date: Tue, 6 Dec 2011 16:34:48 -0200 Subject: [PATCH] Merge to head --- MyTracks/AndroidManifest.xml | 1 + MyTracks/assets/welcome.html | 62 - MyTracks/assets/welcome.png | Bin 23709 -> 0 bytes MyTracks/res/layout/about.xml | 196 +- MyTracks/res/layout/chart_settings.xml | 124 +- MyTracks/res/layout/track_widget.xml | 12 +- MyTracks/res/layout/welcome.xml | 131 +- MyTracks/res/raw/eula | 43 - MyTracks/res/values-ca/strings.xml | 15 +- MyTracks/res/values-de/strings.xml | 15 +- MyTracks/res/values-es/strings.xml | 18 +- MyTracks/res/values-fi/strings.xml | 18 +- MyTracks/res/values-fr/strings.xml | 13 +- MyTracks/res/values-it/strings.xml | 15 +- MyTracks/res/values-ja/strings.xml | 16 +- MyTracks/res/values-pl/strings.xml | 15 +- MyTracks/res/values-pt-rBR/strings.xml | 15 +- MyTracks/res/values-ru/strings.xml | 16 +- MyTracks/res/values-sv/strings.xml | 15 +- MyTracks/res/values-zh-rCN/strings.xml | 18 +- .../res/values/arrays_do_not_translate.xml | 2 +- MyTracks/res/values/do_not_translate.xml | 1 - MyTracks/res/values/plurals.xml | 82 + MyTracks/res/values/strings.xml | 2444 +++++++++++++---- MyTracks/res/values/styles.xml | 147 +- .../mytracks/AggregatedStatsActivity.java | 3 +- .../apps/mytracks/ChartValueSeries.java | 15 +- .../android/apps/mytracks/ChartView.java | 15 +- .../android/apps/mytracks/CheckUnits.java | 5 +- .../apps/mytracks/DeleteAllTracks.java | 7 +- .../android/apps/mytracks/DeleteTrack.java | 4 +- .../google/android/apps/mytracks/Eula.java | 107 - .../apps/mytracks/ExportAllTracks.java | 6 +- .../apps/mytracks/ImportAllTracks.java | 8 +- .../android/apps/mytracks/MapOverlay.java | 4 +- .../android/apps/mytracks/MyTracks.java | 53 +- .../apps/mytracks/SensorStateActivity.java | 5 +- .../apps/mytracks/SettingsActivity.java | 5 +- .../android/apps/mytracks/StatsActivity.java | 3 +- .../android/apps/mytracks/StatsUtilities.java | 22 +- .../android/apps/mytracks/TrackList.java | 3 +- .../apps/mytracks/WaypointDetails.java | 5 +- .../android/apps/mytracks/WaypointsList.java | 5 +- .../apps/mytracks/WelcomeActivity.java | 79 +- .../mytracks/content/MyTracksProvider.java | 2 +- .../apps/mytracks/content/TrackDataHub.java | 3 +- .../android/apps/mytracks/io/SendToDocs.java | 24 +- .../apps/mytracks/io/SendToFusionTables.java | 16 +- .../apps/mytracks/io/SendToMyMaps.java | 20 +- .../io/backup/BackupActivityHelper.java | 6 +- .../io/backup/ExternalFileBackup.java | 8 +- .../io/backup/MyTracksBackupAgent.java | 5 +- .../io/backup/PreferenceBackupHelper.java | 12 +- .../apps/mytracks/io/docs/DocsHelper.java | 14 +- .../apps/mytracks/io/docs/DocsTagBuilder.java | 19 +- .../apps/mytracks/io/file/CsvTrackWriter.java | 12 +- .../apps/mytracks/io/file/GpxTrackWriter.java | 13 +- .../apps/mytracks/io/file/TcxTrackWriter.java | 14 +- .../mytracks/io/file/TrackWriterImpl.java | 4 +- .../io/file/WriteProgressController.java | 2 +- .../io/sendtogoogle/SendActivity.java | 32 +- .../maps/DynamicSpeedTrackPathDescriptor.java | 9 +- .../maps/FixedSpeedTrackPathDescriptor.java | 11 +- .../maps/TrackPathPainterFactory.java | 4 +- .../services/DefaultTrackNameFactory.java | 10 +- .../mytracks/services/PreferenceManager.java | 26 +- .../apps/mytracks/services/ServiceUtils.java | 2 +- .../services/TrackRecordingService.java | 12 +- .../sensors/BluetoothSensorManager.java | 4 +- .../sensors/SensorManagerFactory.java | 4 +- .../sensors/ant/AntDirectSensorManager.java | 12 +- .../sensors/ant/AntSRMSensorManager.java | 227 -- .../ant/AntSrmBridgeSensorManager.java | 18 +- .../services/tasks/StatusAnnouncerTask.java | 133 +- .../apps/mytracks/util/ApiLevel3Adapter.java | 7 - .../apps/mytracks/util/ApiLevel9Adapter.java | 9 +- .../apps/mytracks/util/ApiLevelAdapter.java | 13 - .../apps/mytracks/util/ChartURLGenerator.java | 4 +- .../android/apps/mytracks/util/EulaUtil.java | 44 + .../android/apps/mytracks/util/FileUtils.java | 12 + .../apps/mytracks/util/StringUtils.java | 13 +- .../mytracks/widgets/TrackWidgetProvider.java | 2 +- .../apps/mytracks/ChartValueSeriesTest.java | 1 - .../android/apps/mytracks/MyTracksTest.java | 6 +- .../mytracks/content/TrackDataHubTest.java | 23 +- .../io/backup/PreferenceBackupHelperTest.java | 8 +- .../io/docs/DocsHelper_AddTrackRowTest.java | 17 +- .../mytracks/io/file/TcxTrackWriterTest.java | 17 +- .../mytracks/io/file/TrackWriterTest.java | 2 +- .../maps/TrackPathPainterFactoryTest.java | 7 +- .../services/DefaultTrackNameFactoryTest.java | 4 +- .../services/TrackRecordingServiceTest.java | 13 +- .../sensors/SensorManagerFactoryTest.java | 11 +- .../ant/AntDirectSensorManagerTest.java | 6 +- 94 files changed, 2793 insertions(+), 1892 deletions(-) delete mode 100644 MyTracks/assets/welcome.html delete mode 100644 MyTracks/assets/welcome.png delete mode 100644 MyTracks/res/raw/eula create mode 100644 MyTracks/res/values/plurals.xml delete mode 100644 MyTracks/src/com/google/android/apps/mytracks/Eula.java delete mode 100644 MyTracks/src/com/google/android/apps/mytracks/services/sensors/ant/AntSRMSensorManager.java create mode 100644 MyTracks/src/com/google/android/apps/mytracks/util/EulaUtil.java diff --git a/MyTracks/AndroidManifest.xml b/MyTracks/AndroidManifest.xml index c271ac8c2..a1e7f6695 100755 --- a/MyTracks/AndroidManifest.xml +++ b/MyTracks/AndroidManifest.xml @@ -168,6 +168,7 @@ limitations under the License. diff --git a/MyTracks/assets/welcome.html b/MyTracks/assets/welcome.html deleted file mode 100644 index 0de17b483..000000000 --- a/MyTracks/assets/welcome.html +++ /dev/null @@ -1,62 +0,0 @@ - - - -My Tracks Welcome - - -
- - -

-What is My Tracks?
-My Tracks is an application for your Android powered phone. With My Tracks you can record GPS tracks and visualize your hiking, running, biking or any other activity while watching live performance statistics. My Tracks makes it easy to archive your training history with Google Docs and Google My Maps, and share your activities with friends and the world.

- -How do I see the map, statistics and elevation profile?
-Touch the map. Left and right arrows will appear. Tap on these arrows to cycle between the map view, the track statistics view, and the elevation profile.

- -Why does the application sometimes display Waiting for a better GPS fix. Make sure the sky is visible?
-For My Tracks to work, your phone needs to be in line-of-sight contact with the GPS satellites orbiting the earth. If line-of-sight is obstructed by trees, buildings or canyon walls, you may not get an accurate fix. If you see the message Waiting for a better GPS fix, wait a minute or two. If your device does not achieve a fix, move to an area clear of obstructions and try again. -

- -How do I send my tracks to Google My Maps and Google Docs?
-Tap the Options button located at the bottom right corner of the map and select Send to Google... Then choose to send the track to Google My Maps and/or Google Docs. The first time you do this, you may be prompted to log into your Google account. By default your track will be uploaded to a new My Map that will be created in your account. You can opt to add your track to an existing My Map if you prefer. In that case you will be asked to choose a My Map from your account. You can view and edit all of your My Maps by going to maps.google.com, signing in, and clicking on the My Maps tab.

- -How do I share tracks with friends and the rest of the world?
-After recording a track, press the Options button on the bottom right of the map and then select Share with friends... Select how you want to share the track: a) as a link to a Google My Map (you will be prompted to upload the track to Google My Maps if you have not already done so), b) as a GPX file in an e-mail attachment, or c) as a KML file in an e-mail attachment. You can also send an e-mail with a link to your My Map by going to maps.google.com on your computer. Select the map and then click Link on the right side of the Google Maps web site.

- -Can I view other people's tracks on my Android phone?
-Yes. Use the Google My Maps Editor application, available from the Android Market, to view tracks that have been uploaded to maps.google.com by you or your friends. If you have received an e-mail invitation to view a map, you can click on the link contained in the e-mail to view the map on your Android phone, assuming that Google My Maps Editor is installed on the phone.

- -What are way point markers?
-Way point markers are used to annotate a place. For example if you are recording a track and you are close to an interesting place, let's say a mountain top, press MENU | Markers | Insert Way point to insert a way point marker at that location. Type a name and description for the place. Once you send your track to Google a place marker will show up on your map. People who view your maps can read your description and learn about this place.

- -What are statistics markers?
-Let's say you are recording a bike ride up a hill. You will be able to see the total time and distance for the trip, but wouldn't it be good to know how long the climbing part took and how much altitude has been gained? That's what statistics marker are for. Insert a statistics marker once at the bottom of the hill, and once at the top. Now you will be able to view track statistics for each segment of your ride. Each marker has the statistic for the segment up to the marker. Note: To insert a statistics marker simply press the track ball (while the My Tracks application is in the foreground), or use MENU | Markers | Insert Statistics.

- -Do I need a cell signal and data connection to use My Tracks?
-A cell signal or data connection is not required to record GPS tracks. However, if there is no data connection, you will not be able to see satellite imagery or a map. Instead, you will see a grey screen or partial map. Tracks, represented as simple lines, can still be recorded even if there is no data connection.

- -How long does the battery last when recording tracks?
-The GPS receiver draws a relatively high amount of power, so a fully charged battery typically survives less than 5 hours. Battery life depends on many factors, including signal strength, battery freshness, and tasks running in parallel. Switching off some or all of the phone's radios will lengthen battery life. Putting the phone into Airplane mode will yield the best results.

- -What can I do with tracks after saving them as GPX or KML files to the SD card or sharing such files with friends?
GPX and KML are standard file formats for storing data from GPS receivers. You can use Google Earth or similar applications to visualize and edit GPS tracks. Go to http://earth.google.com to download the latest version of Google Earth for free.

- -How precise are the recorded tracks?
-Under optimal conditions the location error can be +/- 20 feet (6 meters). However, precision depends on the quality of the GPS signal. Your phone needs to be in line-of-sight contact with the GPS satellites orbiting the earth. The signal will be best in open areas free of trees, buildings, canyon walls and other obstructions. The blue circle around the orange location arrow indicates estimated precision. (You may need to zoom in or out to see the circle.) If the precision is too low, a message at the top of the screen will alert you and tracks will not be recorded. You can change the minimum required precision in the My Tracks Settings (See: MENU | Settings | Pause recording if accuracy drops below).

- - How precise is the elevation measurement?
-GPS receivers measure elevations much less precisely than latitude and longitude. Elevations can sometimes be off by a few hundred feet, though relative changes are tracked more precisely. To get a good elevation measurement make sure that you have a strong GPS signal (good sky visibility) and wait a few minutes for the elevation to settle to a stable value.

- -Can I edit the tracks and correct them for inaccuracies?
-Once you upload tracks to Google My Maps, you can move, delete or insert individual track points as desired.

- -Why do very long tracks split into multiple segments upon sending them to Google My Maps?
-Tracks on maps.google.com are limited to 500 points or less. As a result, long tracks are split into multiple pieces upon upload to Google My Maps.

- -How do I delete all tracks from my phone?
Press the MENU button and select List tracks. Tap the Delete all tracks button. This permanently deletes the recorded GPS tracks from memory. If you have saved tracks to the SD card, you must delete them separately. Tracks uploaded to Google My Maps and Google Docs must also be deleted separately.

- -Who can see maps I send to maps.google.com?
By default new maps that you send to maps.google.com will be publicly visible. To prevent newly created maps from being public, go to the My Tracks settings screen and deselect the check box labeled Make maps public on maps.google.com. You can change the visibility of existing maps through the maps.google.com web site or using the Google My Maps Editor application from your Android phone.



- -

- - diff --git a/MyTracks/assets/welcome.png b/MyTracks/assets/welcome.png deleted file mode 100644 index 80e039ebf59f5e5b6d1f327886c0fe8539af2471..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23709 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 M07*qoM6N<$f-AQK5&!@I diff --git a/MyTracks/res/layout/about.xml b/MyTracks/res/layout/about.xml index 74ef6aa7a..d50ec9442 100644 --- a/MyTracks/res/layout/about.xml +++ b/MyTracks/res/layout/about.xml @@ -14,139 +14,89 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> - - - - - + + + + + android:orientation="vertical"> + + + + + + - - - - - - - - + android:orientation="vertical"> + + + + + + + + + + android:text="@string/about_version" + style="@style/AboutTextView.Column0"/> + android:id="@+id/about_version" + style="@style/AboutTextView"/> + + + android:text="@string/about_support" + style="@style/AboutTextView.Column0"/> + android:text="@string/my_tracks_web_url" + style="@style/AboutTextView.Url"/> + + + android:text="@string/about_privacy" + style="@style/AboutTextView.Column0"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - + android:text="@string/my_tracks_privacy_url" + style="@style/AboutTextView.Url"/> + + + \ No newline at end of file diff --git a/MyTracks/res/layout/chart_settings.xml b/MyTracks/res/layout/chart_settings.xml index acfec28d7..0268b5a4b 100644 --- a/MyTracks/res/layout/chart_settings.xml +++ b/MyTracks/res/layout/chart_settings.xml @@ -15,108 +15,118 @@ See the License for the specific language governing permissions and limitations under the License. --> + android:layout_width="fill_parent"> + android:textSize="20sp"/> + android:layout_height="0dp" + android:layout_weight="1" + android:layout_width="fill_parent"> + android:layout_marginLeft="5dp" + android:layout_marginTop="5dp" + android:layout_width="fill_parent" + android:stretchColumns="1"> + android:layout_marginLeft="10dp" + android:layout_width="fill_parent" + android:orientation="vertical"> - - - - - + + + + + - + android:layout_marginLeft="10dp" + android:layout_width="fill_parent" + android:orientation="vertical"> - - + + android:textSize="20sp" /> - - - - - @@ -124,11 +134,13 @@ limitations under the License. -