forked from upstream-mirrors/OpenTracks
Merge from head and address comment.
This commit is contained in:
@@ -2,5 +2,6 @@ syntax:glob
|
|||||||
|
|
||||||
*/bin
|
*/bin
|
||||||
*/gen/**
|
*/gen/**
|
||||||
|
*/proguard/**
|
||||||
.metadata
|
.metadata
|
||||||
MyTracksTest/annotations.log
|
MyTracksTest/annotations.log
|
||||||
|
|||||||
@@ -175,6 +175,7 @@ limitations under the License.
|
|||||||
|
|
||||||
<uses-sdk android:minSdkVersion="3"/>
|
<uses-sdk android:minSdkVersion="3"/>
|
||||||
<supports-screens
|
<supports-screens
|
||||||
|
android:xlargeScreens="true"
|
||||||
android:largeScreens="true"
|
android:largeScreens="true"
|
||||||
android:normalScreens="true"
|
android:normalScreens="true"
|
||||||
android:smallScreens="true"
|
android:smallScreens="true"
|
||||||
|
|||||||
@@ -10,5 +10,6 @@
|
|||||||
# Indicates whether an apk should be generated for each density.
|
# Indicates whether an apk should be generated for each density.
|
||||||
split.density=false
|
split.density=false
|
||||||
# Project target.
|
# Project target.
|
||||||
target=Google Inc.:Google APIs:8
|
target=Google Inc.:Google APIs:9
|
||||||
|
proguard.config=proguard.cfg
|
||||||
android.library.reference.1=../MyTracksLib/
|
android.library.reference.1=../MyTracksLib/
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
-target 6
|
||||||
-optimizationpasses 5
|
-optimizationpasses 5
|
||||||
-dontusemixedcaseclassnames
|
-dontusemixedcaseclassnames
|
||||||
-dontskipnonpubliclibraryclasses
|
-dontskipnonpubliclibraryclasses
|
||||||
@@ -5,9 +6,18 @@
|
|||||||
-verbose
|
-verbose
|
||||||
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
|
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
|
||||||
|
|
||||||
|
# Add the libraries, but ignore warnings about them
|
||||||
|
-libraryjars libs
|
||||||
|
-libraryjars ../MyTracksLib/libs
|
||||||
|
-dontwarn com.google.android.googleapps.**
|
||||||
|
-dontwarn com.android.common.**
|
||||||
|
-dontwarn com.google.android.gsf.**
|
||||||
|
|
||||||
|
# Keep everything android references from XMLs
|
||||||
-keep public class * extends android.app.Activity
|
-keep public class * extends android.app.Activity
|
||||||
-keep public class * extends android.app.Application
|
-keep public class * extends android.app.Application
|
||||||
-keep public class * extends android.app.Service
|
-keep public class * extends android.app.Service
|
||||||
|
-keep public class * extends android.app,backup.BackupAgent
|
||||||
-keep public class * extends android.content.BroadcastReceiver
|
-keep public class * extends android.content.BroadcastReceiver
|
||||||
-keep public class * extends android.content.ContentProvider
|
-keep public class * extends android.content.ContentProvider
|
||||||
-keep public class com.android.vending.licensing.ILicensingService
|
-keep public class com.android.vending.licensing.ILicensingService
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ limitations under the License.
|
|||||||
<resources>
|
<resources>
|
||||||
<!-- Task frequency -->
|
<!-- Task frequency -->
|
||||||
<string-array name="task_frequency_options">
|
<string-array name="task_frequency_options">
|
||||||
<item>Off</item>
|
<item>Aus</item>
|
||||||
<item>1 min</item>
|
<item>1 min</item>
|
||||||
<item>2 min</item>
|
<item>2 min</item>
|
||||||
<item>5 min</item>
|
<item>5 min</item>
|
||||||
@@ -70,8 +70,8 @@ limitations under the License.
|
|||||||
|
|
||||||
<!-- Minimum recording interval -->
|
<!-- Minimum recording interval -->
|
||||||
<string-array name="min_recording_interval_options">
|
<string-array name="min_recording_interval_options">
|
||||||
<item>batterie sparend (adaptiv)</item>
|
<item>batteriesparend (adaptiv)</item>
|
||||||
<item>hohe genauigkeit (adaptiv)</item>
|
<item>hohe Genauigkeit (adaptiv)</item>
|
||||||
<item>maximal (empfohlen)</item>
|
<item>maximal (empfohlen)</item>
|
||||||
<item>2 s</item>
|
<item>2 s</item>
|
||||||
<item>3 s</item>
|
<item>3 s</item>
|
||||||
@@ -133,12 +133,12 @@ limitations under the License.
|
|||||||
|
|
||||||
<string-array name="split_frequency_options_ft">
|
<string-array name="split_frequency_options_ft">
|
||||||
<item>Nicht zerteilen</item>
|
<item>Nicht zerteilen</item>
|
||||||
<item>100 meilen</item>
|
<item>100 Meilen</item>
|
||||||
<item>50 meilen</item>
|
<item>50 Meilen</item>
|
||||||
<item>25 meilen</item>
|
<item>25 Meilen</item>
|
||||||
<item>10 meilen</item>
|
<item>10 Meilen</item>
|
||||||
<item>5 meilen</item>
|
<item>5 Meilen</item>
|
||||||
<item>1 meile</item>
|
<item>1 Meile</item>
|
||||||
<item>60 min</item>
|
<item>60 min</item>
|
||||||
<item>30 min</item>
|
<item>30 min</item>
|
||||||
<item>15 min</item>
|
<item>15 min</item>
|
||||||
@@ -159,7 +159,7 @@ limitations under the License.
|
|||||||
<item>Laufbahn</item>
|
<item>Laufbahn</item>
|
||||||
<item>Geländelauf</item>
|
<item>Geländelauf</item>
|
||||||
<item>Gehen</item>
|
<item>Gehen</item>
|
||||||
<item>Schnelles Gehen</item>
|
<item>Gehen (Sport)</item>
|
||||||
<item>Wandern</item>
|
<item>Wandern</item>
|
||||||
<item>Bergwandern</item>
|
<item>Bergwandern</item>
|
||||||
<item>Bergsteigen</item>
|
<item>Bergsteigen</item>
|
||||||
@@ -181,11 +181,11 @@ limitations under the License.
|
|||||||
<item>Eissegeln</item>
|
<item>Eissegeln</item>
|
||||||
|
|
||||||
<item>Segeln</item>
|
<item>Segeln</item>
|
||||||
<item>Kanadierfahren</item>
|
<item>Paddeln</item>
|
||||||
<item>Kajakfahren</item>
|
<item>Kajak fahren</item>
|
||||||
<item>Kanuwandern</item>
|
<item>Kanuwandern</item>
|
||||||
<item>Rudern</item>
|
<item>Rudern</item>
|
||||||
<item>Motorbootfahren</item>
|
<item>Motorboot fahren</item>
|
||||||
<item>Fähre</item>
|
<item>Fähre</item>
|
||||||
<item>Ferngesteuertes Boot</item>
|
<item>Ferngesteuertes Boot</item>
|
||||||
<item>Surfen</item>
|
<item>Surfen</item>
|
||||||
@@ -229,13 +229,14 @@ limitations under the License.
|
|||||||
<item>Bank</item>
|
<item>Bank</item>
|
||||||
<item>Kneipe</item>
|
<item>Kneipe</item>
|
||||||
<item>Grill</item>
|
<item>Grill</item>
|
||||||
|
<item>Imbiss</item>
|
||||||
<item>Gebäude</item>
|
<item>Gebäude</item>
|
||||||
<item>Bushaltestelle</item>
|
<item>Bushaltestelle</item>
|
||||||
<item>Straßenbahnhaltestelle</item>
|
<item>Straßenbahnhaltestelle</item>
|
||||||
<item>Bahnhof</item>
|
<item>Bahnhof</item>
|
||||||
<item>S-Bahnhof</item>
|
<item>S-Bahnhof</item>
|
||||||
<item>Café</item>
|
<item>Café</item>
|
||||||
<item>Lagerfeuer</item>
|
<item>Feuerstelle</item>
|
||||||
<item>Campingplatz</item>
|
<item>Campingplatz</item>
|
||||||
<item>Zeltplatz</item>
|
<item>Zeltplatz</item>
|
||||||
<item>Kirche</item>
|
<item>Kirche</item>
|
||||||
@@ -278,6 +279,7 @@ limitations under the License.
|
|||||||
<item>Tunnel</item>
|
<item>Tunnel</item>
|
||||||
<item>Baum</item>
|
<item>Baum</item>
|
||||||
<item>Wasserfall</item>
|
<item>Wasserfall</item>
|
||||||
|
<item>Springbrunnen</item>
|
||||||
<item>Wegpunkt</item>
|
<item>Wegpunkt</item>
|
||||||
</array>
|
</array>
|
||||||
|
|
||||||
|
|||||||
@@ -26,52 +26,54 @@ limitations under the License.
|
|||||||
<string name="delete_all_tracks">Alle Tracks löschen</string>
|
<string name="delete_all_tracks">Alle Tracks löschen</string>
|
||||||
<string name="settings">Einstellungen</string>
|
<string name="settings">Einstellungen</string>
|
||||||
<string name="elevation">Höhe</string>
|
<string name="elevation">Höhe</string>
|
||||||
<string name="choose_track_message">Bitte wählen Sie einen Track zur Ansicht aus</string>
|
<string name="choose_track_message">Bitte wähle einen Track zur Ansicht aus</string>
|
||||||
<string name="current_track">Aktueller Track</string>
|
<string name="current_track">Aktueller Track</string>
|
||||||
<string name="current_segment">Letztes Segment</string>
|
<string name="current_segment">Letztes Segment</string>
|
||||||
|
<string name="sensor_state">Sensorstatus</string>
|
||||||
|
<string name="aggregated_stats">Aggregierte Statistiken</string>
|
||||||
|
|
||||||
<!-- Error messages -->
|
<!-- Error messages -->
|
||||||
<string name="error_no_location_manager">Es wurde kein \'Location Manager\' auf diesem Gerät gefunden.</string>
|
<string name="error_no_location_manager">Es wurde kein Dienst zur Positionsermittlung auf diesem Gerät gefunden.</string>
|
||||||
<string name="error_no_gps_location_provider">Konnte keinen GPS-Empfänger auf diesem Gerät finden.</string>
|
<string name="error_no_gps_location_provider">Es wurde kein GPS-Empfänger auf diesem Gerät gefunden.</string>
|
||||||
<string name="error_sending_to_mymap">Beim Senden Ihres Tracks an Google My Maps ist ein Fehler aufgetreten. Bitte versuchen Sie es später nochmal.</string>
|
<string name="error_sending_to_mymap">Beim Senden des Tracks an Google MyMaps ist ein Fehler aufgetreten. Bitte versuche es später noch einmal.</string>
|
||||||
<string name="error_sending_to_docs">Beim Senden Ihres Tracks an Google Docs ist ein Fehler aufgetreten. Bitte versuchen Sie es später nochmal.</string>
|
<string name="error_sending_to_docs">Beim Senden des Tracks an Google Docs ist ein Fehler aufgetreten. Bitte versuche es später noch einmal.</string>
|
||||||
<string name="error_unable_to_start_recording">Aufzeichnen fehlgeschlagen. Bitte versuchen Sie es nochmal.</string>
|
<string name="error_unable_to_start_recording">Start der Aufzeichnung fehlgeschlagen. Bitte versuche es noch einmal.</string>
|
||||||
<string name="error_unable_to_stop_recording">Anhalten unmöglich. Bitte versuchen Sie es nochmal.</string>
|
<string name="error_unable_to_stop_recording">Anhalten unmöglich. Bitte versuche es noch einmal.</string>
|
||||||
<string name="error_unable_to_read_file">Datei nicht lesbar.</string>
|
<string name="error_unable_to_read_file">Konnte Datei nicht lesen.</string>
|
||||||
<string name="error_invalid_gpx_format">Datei ist nicht im GPX-Format.</string>
|
<string name="error_invalid_gpx_format">Datei ist nicht im GPX-Format.</string>
|
||||||
<string name="error_generic">Ein Fehler ist aufgetreten. Bitte versuchen Sie es nochmal.</string>
|
<string name="error_generic">Ein Fehler ist aufgetreten. Bitte versuche es noch einmal.</string>
|
||||||
<string name="error_track_does_not_exist">Track existiert nicht.</string>
|
<string name="error_track_does_not_exist">Track existiert nicht.</string>
|
||||||
<string name="error_out_of_memory">Die Datei ist zu groß (Obergrenze sind 500 KB). Operation abgebrochen.</string>
|
<string name="error_out_of_memory">Die Datei ist zu groß (maximal 500 KB). Operation abgebrochen.</string>
|
||||||
<string name="error_unable_to_insert_marker">Der Wegpunkt kann nicht einfügt werden. Keine Positionsbestimmung möglich.</string>
|
<string name="error_unable_to_insert_marker">Der Wegpunkt kann nicht einfügt werden. Keine Positionsbestimmung möglich.</string>
|
||||||
|
|
||||||
<!-- Status messages -->
|
<!-- Status messages -->
|
||||||
<string name="wait_for_fix">Warten auf ein besseres GPS-Signal. Bitte stellen Sie sicher, dass der Himmel sichtbar ist.</string>
|
<string name="wait_for_fix">Warte auf ein besseres GPS-Signal. Bitte stelle sicher, dass der Himmel sichtbar ist.</string>
|
||||||
<string name="status_now_recording">Ein neuer Track wird aufgezeichnet.</string>
|
<string name="status_now_recording">Ein neuer Track wird aufgezeichnet.</string>
|
||||||
<string name="status_stopped_recording">Die Aufzeichnung wurde beendet.</string>
|
<string name="status_stopped_recording">Die Aufzeichnung wurde angehalten.</string>
|
||||||
<string name="status_new_mymap_has_been_created">Eine neue Karte wurde auf maps.google.com erstellt.</string>
|
<string name="status_new_mymap_has_been_created">Eine neue Karte wurde auf maps.google.com erstellt.</string>
|
||||||
<string name="status_tracks_have_been_uploaded">Ihr Track wurde auf maps.google.com gespeichert.</string>
|
<string name="status_tracks_have_been_uploaded">Dein Track wurde auf maps.google.com gespeichert.</string>
|
||||||
<string name="status_tracks_have_been_uploaded_to_new_doc">Ihr Track wurde in einer neuen Tabelle bei docs.google.com gespeichert.</string>
|
<string name="status_tracks_have_been_uploaded_to_new_doc">Dein Track wurde in einer neuen Tabelle bei docs.google.com gespeichert.</string>
|
||||||
<string name="status_tracks_have_been_uploaded_to_docs">Ihr Track wurde an docs.google.com gesendet.</string>
|
<string name="status_tracks_have_been_uploaded_to_docs">Dein Track wurde an docs.google.com gesendet.</string>
|
||||||
<string name="status_mymap_info">Manchmal dauert es ein paar Minuten, bis neue Tracks bei maps.google.com erscheinen.</string>
|
<string name="status_mymap_info">Manchmal dauert es ein paar Minuten, bis neue Tracks bei maps.google.com erscheinen.</string>
|
||||||
<string name="status_enable_gps">Berühren Sie hier um zu den Sicherheits- und Positionseinstellungen zu gelangen. Aktiviere \'GPS-Satelliten\'. Drücken Sie dann den Zurück-Knopf um zurückzukehren.</string>
|
<string name="status_enable_gps">Hier berühren, um zu den Sicherheits- und Positionseinstellungen zu gelangen. Aktiviere \'GPS-Satelliten\'. Drücke dann den Zurück-Knopf, um hierher zurückzukehren.</string>
|
||||||
<string name="status_approximate_location">Anmerkung: Eine ungefähre Position wird angezeigt, bestimmt mittels Funktürmen und WiFi-Netzwerken.</string>
|
<string name="status_approximate_location">Anmerkung: Eine ungefähre Position wird angezeigt, bestimmt mittels Mobilfunkstationen und WiFi-Netzwerken.</string>
|
||||||
<string name="status_no_location">Ihre Position kann derzeit nicht bestimmt werden. Aktivieren Sie mehr Positionsquellen (siehe Sicherheits- und Positionseinstellungen) und stellen Sie sicher, dass der Himmel sichtbar ist.</string>
|
<string name="status_no_location">Die Position kann derzeit nicht bestimmt werden. Aktiviere mehr Positionsquellen (siehe Sicherheits- und Positionseinstellungen) und stelle sicher, dass der Himmel sichtbar ist.</string>
|
||||||
<string name="status_waypoint_inserted">Ein Wegpunkt wurde eingefügt.</string>
|
<string name="status_waypoint_inserted">Ein Wegpunkt wurde eingefügt.</string>
|
||||||
<string name="status_statistics_inserted">Ein Statistikwegpunkt wurde eingefügt.</string>
|
<string name="status_statistics_inserted">Ein Statistikwegpunkt wurde eingefügt.</string>
|
||||||
|
|
||||||
<!-- Progress dialog -->
|
<!-- Progress dialog -->
|
||||||
<string name="progress_title">Bitte warten…</string>
|
<string name="progress_title">Bitte warten…</string>
|
||||||
<string name="progress_message">Ihr GPS-Track wird an Google gesendet.</string>
|
<string name="progress_message">Dein Track wird an Google gesendet...</string>
|
||||||
<string name="progress_message_reading_track">Lese Track</string>
|
<string name="progress_message_reading_track">Lese Track...</string>
|
||||||
<string name="progress_message_preparing_track">Bereite Track vor</string>
|
<string name="progress_message_preparing_track">Bereite Track vor...</string>
|
||||||
<string name="progress_message_authenticating_mymaps">Anmelden bei Google Maps</string>
|
<string name="progress_message_authenticating_mymaps">Anmeldung bei Google Maps...</string>
|
||||||
<string name="progress_message_authenticating_docs">Anmelden bei Google Docs</string>
|
<string name="progress_message_authenticating_docs">Anmeldung bei Google Docs...</string>
|
||||||
<string name="progress_message_sending_docs">Track an Google Docs senden</string>
|
<string name="progress_message_sending_docs">Track wird an Google Docs gesendet...</string>
|
||||||
<string name="progress_message_sending_mymaps">Track an Google Maps senden</string>
|
<string name="progress_message_sending_mymaps">Track wird an Google Maps gesendet...</string>
|
||||||
<string name="progress_message_creating_map">Neue \'Meine Karte\' erstellen</string>
|
<string name="progress_message_creating_map">Neue \'Meine Karte\' wird erstellt...</string>
|
||||||
<string name="import_progress_message">Importiere GPS-Track. Das dauert ein wenig.</string>
|
<string name="import_progress_message">Importiere GPS-Track. Das kann ein wenig dauern.</string>
|
||||||
<string name="write_progress_message">Schreibe Datei auf SD-Karte. Das dauert ein wenig.</string>
|
<string name="write_progress_message">Schreibe Datei auf SD-Karte. Das kann ein wenig dauern.</string>
|
||||||
<string name="progress_message_updating_track">Aktualisiere Trackstatistik</string>
|
<string name="progress_message_updating_track">Aktualisiere Trackstatistik...</string>
|
||||||
|
|
||||||
<!-- Used by DeleteAllDataHandler -->
|
<!-- Used by DeleteAllDataHandler -->
|
||||||
<string name="are_you_sure_question">Bist Du Dir wirklich sicher?</string>
|
<string name="are_you_sure_question">Bist Du Dir wirklich sicher?</string>
|
||||||
@@ -80,17 +82,19 @@ limitations under the License.
|
|||||||
<string name="marker_will_be_permanently_deleted">Dieser Wegpunkt wird endgültig von diesem Gerät gelöscht.</string>
|
<string name="marker_will_be_permanently_deleted">Dieser Wegpunkt wird endgültig von diesem Gerät gelöscht.</string>
|
||||||
|
|
||||||
<!-- Text and links when uploading to Google MyMaps -->
|
<!-- Text and links when uploading to Google MyMaps -->
|
||||||
|
<string name="new_map_description">Erstellt von My Tracks für Android.</string>
|
||||||
|
<string name="my_map_link">Erstellt von <a href=\'http://mytracks.appspot.com\'>My Tracks</a> für Android.</string>
|
||||||
<string name="new_map_title">Neue Karte</string>
|
<string name="new_map_title">Neue Karte</string>
|
||||||
|
|
||||||
<!-- Formatting of track and marker descriptions -->
|
<!-- Formatting of track and marker descriptions -->
|
||||||
<string name="points">Punkte</string>
|
<string name="points">Punkte</string>
|
||||||
<string name="recorded_date">Aufgezeichnet am</string>
|
<string name="recorded_date">Aufgezeichnet am</string>
|
||||||
<string name="category">"Aktivität"</string>
|
<string name="category">Aktivität</string>
|
||||||
<string name="waypoint_category">"Art des Wegpunktes"</string>
|
<string name="waypoint_category">Art des Wegpunktes</string>
|
||||||
<string name="part">"(Teil %d)"</string>
|
<string name="part">(Teil %d)</string>
|
||||||
|
|
||||||
<!-- Used by the track recording service -->
|
<!-- Used by the track recording service -->
|
||||||
<string name="recording_your_track">"Ihr Track wird aufgezeichnet…"</string>
|
<string name="recording_your_track">Dein Track wird aufgezeichnet…</string>
|
||||||
|
|
||||||
<!-- Common -->
|
<!-- Common -->
|
||||||
<string name="no">Nein</string>
|
<string name="no">Nein</string>
|
||||||
@@ -100,7 +104,7 @@ limitations under the License.
|
|||||||
<string name="waypoint">Wegpunkt</string>
|
<string name="waypoint">Wegpunkt</string>
|
||||||
|
|
||||||
<!-- Placemark labels for start and end of track -->
|
<!-- Placemark labels for start and end of track -->
|
||||||
<string name="start">(Anfang)</string>
|
<string name="start">(Beginn)</string>
|
||||||
<string name="end">(Ende)</string>
|
<string name="end">(Ende)</string>
|
||||||
|
|
||||||
<!-- TrackList -->
|
<!-- TrackList -->
|
||||||
@@ -114,15 +118,22 @@ limitations under the License.
|
|||||||
<string name="tracklist_write_to_sd">Auf SD-Karte speichern…</string>
|
<string name="tracklist_write_to_sd">Auf SD-Karte speichern…</string>
|
||||||
<string name="tracklist_save_as_gpx">GPX-Datei exportieren</string>
|
<string name="tracklist_save_as_gpx">GPX-Datei exportieren</string>
|
||||||
<string name="tracklist_save_as_kml">KML-Datei exportieren</string>
|
<string name="tracklist_save_as_kml">KML-Datei exportieren</string>
|
||||||
|
<string name="tracklist_save_as_csv">CSV-Datei exportieren</string>
|
||||||
|
<string name="tracklist_save_as_tcx">TCX-Datei exportieren</string>
|
||||||
<string name="tracklist_btn_send_all_to_mymaps">An Google MyMaps senden</string>
|
<string name="tracklist_btn_send_all_to_mymaps">An Google MyMaps senden</string>
|
||||||
<string name="tracklist_btn_delete_all">Alle Tracks löschen</string>
|
<string name="tracklist_btn_delete_all">Alle Tracks löschen</string>
|
||||||
<string name="tracklist_pick_one">Eine Track auswählen. Lange berühren für mehr Optionen.</string>
|
<!-- Export All -->
|
||||||
<string name="tracklist_all_tracks">Alle Tracks:</string>
|
<string name="tracklist_btn_export_all">Alle Tracks exportieren</string>
|
||||||
|
<string name="export_done">Exportieren beendet</string>
|
||||||
|
<string name="tracklist_pick_one">Einen Track auswählen. Lange berühren für mehr Optionen.</string>
|
||||||
|
<string name="tracklist_all_tracks">Alle Tracks</string>
|
||||||
<string name="tracklist_this_track">Dieser Track</string>
|
<string name="tracklist_this_track">Dieser Track</string>
|
||||||
<string name="tracklist_share_track">Mit Freunden teilen…</string>
|
<string name="tracklist_share_track">Mit Freunden teilen…</string>
|
||||||
<string name="tracklist_share_link">Ein Link zur Google MyMaps-Karte</string>
|
<string name="tracklist_share_link">Ein Link zur Google MyMaps-Karte</string>
|
||||||
<string name="tracklist_share_gpx_file">Eine GPX-Datei</string>
|
<string name="tracklist_share_gpx_file">Eine GPX-Datei</string>
|
||||||
<string name="tracklist_share_kml_file">Eine KML-Datei</string>
|
<string name="tracklist_share_kml_file">Eine KML-Datei</string>
|
||||||
|
<string name="tracklist_share_csv_file">Eine CSV-Datei</string>
|
||||||
|
<string name="tracklist_share_tcx_file">Eine TCX-Datei</string>
|
||||||
<string name="tracklist_clear_map">Karte zurücksetzen.</string>
|
<string name="tracklist_clear_map">Karte zurücksetzen.</string>
|
||||||
|
|
||||||
<!-- Waypoints list -->
|
<!-- Waypoints list -->
|
||||||
@@ -150,64 +161,99 @@ limitations under the License.
|
|||||||
<!-- MyTracks Settings -->
|
<!-- MyTracks Settings -->
|
||||||
<string name="mytracks_settings">Einstellungen für My Tracks</string>
|
<string name="mytracks_settings">Einstellungen für My Tracks</string>
|
||||||
<string name="settings_display">Anzeige</string>
|
<string name="settings_display">Anzeige</string>
|
||||||
<string name="settings_recording">Aufzeichnen</string>
|
<string name="settings_recording">Aufzeichnung</string>
|
||||||
<string name="settings_sharing">Mit Freunden Teilen</string>
|
<string name="settings_sharing">Mit Freunden teilen</string>
|
||||||
|
|
||||||
<string name="settings_announcement_frequency">Dauer zwischen Ansagen:</string>
|
<string name="settings_not_available_summary">In dieser Android-Version nicht verfügbar</string>
|
||||||
<string name="settings_announcement_frequency_summary">Kürzeste Zeit zwichen zwei Ansagen</string>
|
|
||||||
|
<string name="settings_announcement_frequency">Dauer zwischen Ansagen</string>
|
||||||
|
<string name="settings_announcement_frequency_summary">Kürzeste Zeit zwischen zwei Ansagen</string>
|
||||||
|
|
||||||
<string name="settings_min_recording_distance">Kleinste Entfernung zwischen Punkten:</string>
|
<string name="settings_min_recording_distance">Kleinste Entfernung zwischen Punkten</string>
|
||||||
<string name="settings_min_recording_distance_summary">Kleinste Entfernung zwischen zwei Positionsaufzeichnungen</string>
|
<string name="settings_min_recording_distance_summary">Kleinste Entfernung zwischen zwei Positionsaufzeichnungen</string>
|
||||||
|
|
||||||
<string name="settings_max_recording_distance">Neues Segment wenn Punkte weiter entfernt als:</string>
|
<string name="settings_max_recording_distance">Neues Segment, wenn Punkte weiter entfernt als</string>
|
||||||
<string name="settings_max_recording_distance_summary">Der Track wird in Zwei geteilt wenn zwei folgende Punkte weiter entfernt sind als hier angegeben.</string>
|
<string name="settings_max_recording_distance_summary">Der Track wird in zwei geteilt, wenn zwei folgende Punkte weiter entfernt sind als hier angegeben.</string>
|
||||||
|
|
||||||
<string name="settings_min_recording_interval">Aufzeichnungsfrequenz:</string>
|
<string name="settings_min_recording_interval">Aufzeichnungsfrequenz</string>
|
||||||
<string name="settings_min_recording_interval_summary">Kürzeste Zeit zwischen zwei Positionsaufzeichnungen.</string>
|
<string name="settings_min_recording_interval_summary">Kürzeste Zeit zwischen zwei Positionsaufzeichnungen</string>
|
||||||
|
|
||||||
<string name="settings_min_required_accuracy">Aufzeichnung pausieren wenn Genauigkeit kleiner als:</string>
|
<string name="settings_min_required_accuracy">Aufzeichnung pausieren, wenn Genauigkeit kleiner als</string>
|
||||||
<string name="settings_min_required_accuracy_summary">Die Aufzeichnung wird kurzfristig angehalten, wenn Ihre Position nicht genauer als hier angegeben ermittelt werden kann.</string>
|
<string name="settings_min_required_accuracy_summary">Die Aufzeichnung wird kurzfristig angehalten, wenn Deine Position nicht genauer als hier angegeben ermittelt werden kann.</string>
|
||||||
|
|
||||||
<string name="settings_metric_units">Entfernungen in metrischen Einheiten anzeigen</string>
|
<string name="settings_metric_units">Entfernungen in metrischen Einheiten anzeigen</string>
|
||||||
<string name="settings_metric_units_summary_on">Alle Entfernungen werden in metrischen Einheiten angezeigt.</string>
|
<string name="settings_metric_units_summary_on">Alle Entfernungen werden in metrischen Einheiten angezeigt.</string>
|
||||||
<string name="settings_metric_units_summary_off">Alle Entfernungen werden in britischen Längeneinheiten angezeigt.</string>
|
<string name="settings_metric_units_summary_off">Alle Entfernungen werden in imperialen Längeneinheiten angezeigt.</string>
|
||||||
|
|
||||||
<string name="settings_map_public">Karten auf maps.google.com veröffentlichen</string>
|
<string name="settings_map_public">Karten auf maps.google.com veröffentlichen</string>
|
||||||
<string name="settings_map_public_summary_on">Hochgeladene Karten auf maps.google.com sind für alle sichtbar.</string>
|
<string name="settings_map_public_summary_on">Hochgeladene Karten auf maps.google.com sind für alle sichtbar.</string>
|
||||||
<string name="settings_map_public_summary_off">Hochgeladene Karten auf maps.google.com werden nicht öffentlich sichtbar aufgelistet.</string>
|
<string name="settings_map_public_summary_off">Hochgeladene Karten auf maps.google.com werden nicht öffentlich sichtbar aufgelistet.</string>
|
||||||
|
|
||||||
<string name="settings_report_speed_or_pace">Geschwindigkeitsanzeige:</string>
|
<string name="settings_report_speed_or_pace">Geschwindigkeitsanzeige</string>
|
||||||
<string name="settings_report_speed_or_pace_summary_on">Geschwindigkeit wird angezeigt.</string>
|
<string name="settings_report_speed_or_pace_summary_on">Geschwindigkeit wird angezeigt.</string>
|
||||||
<string name="settings_report_speed_or_pace_summary_off">Gangart wird angezeigt.</string>
|
<string name="settings_report_speed_or_pace_summary_off">Pace wird angezeigt.</string>
|
||||||
|
|
||||||
<string name="settings_share_url_only">Nur URL als Einladung zum Teilen senden</string>
|
<string name="settings_share_url_only">Nur URL als Einladung zum Teilen senden</string>
|
||||||
<string name="settings_share_url_only_summary_on">Beim teilen mit Freunden wird nur die Karten URL gesendet.</string>
|
<string name="settings_share_url_only_summary_on">Beim Teilen mit Freunden wird nur die Karten-URL gesendet.</string>
|
||||||
<string name="settings_share_url_only_summary_off">Beim teilen mit Freunden wird der GPS Track selbst gesendet.</string>
|
<string name="settings_share_url_only_summary_off">Beim Teilen mit Freunden wird der GPS-Track selbst gesendet.</string>
|
||||||
|
|
||||||
<string name="settings_split_frequency">Zerteilungs Frequenz</string>
|
<string name="settings_split_frequency">Zerteilungsfrequenz</string>
|
||||||
<string name="settings_split_frequency_summary">Längste Dauer oder Entfernung nach der automatisch ein Marker eingefügt wird.</string>
|
<string name="settings_split_frequency_summary">Längste Dauer oder Entfernung, nach der automatisch ein Marker eingefügt wird.</string>
|
||||||
<string name="pace_label">Tempo</string>
|
|
||||||
|
<string name="settings_auto_resume_track_timeout">Zeitbegrenzung der Auto-Wiederaufnahme</string>
|
||||||
|
<string name="settings_auto_resume_track_timeout_summary">Maximale Zeit in Minuten, nach der eine abgebrochene Aufzeichnung nach einem Telefonneustart wiederaufgenommen wird.</string>
|
||||||
|
|
||||||
|
<string name="settings_timestamp_track_name">Zeitstempel als Trackname</string>
|
||||||
|
<string name="settings_timestamp_track_name_summary_on">Der Trackname wird aus Datum und Zeit zum Aufzeichnungsbeginn zusammengesetzt.</string>
|
||||||
|
<string name="settings_timestamp_track_name_summary_off">Tracknamen erhalten eine fortlaufende Nummer.</string>
|
||||||
|
|
||||||
|
<string name="pace_label">Pace</string>
|
||||||
|
|
||||||
|
<string name="eclair_required">Wird nur unter Android 2.0 oder höher unterstützt</string>
|
||||||
|
<string name="settings_sensor_type">Sensortyp</string>
|
||||||
|
<string name="settings_sensor_type_summary">Der Typ des zu verbindenden Sensors</string>
|
||||||
|
<string name="settings_sensor_id">Sensor-Id</string>
|
||||||
|
<string name="settings_sensor_id_summary">Die zum Sensor zu sendende Id</string>
|
||||||
|
<string name="sensor_id_malformed">Die Id muss eine Ganzzahl sein.</string>
|
||||||
|
<string name="bluetooth_sensor_title">Bluetooth-Sensor</string>
|
||||||
|
<string name="bluetooth_sensor_summary">Der zu verbindende Bluetoothsensor</string>
|
||||||
|
<string name="settings_modular_stats_display_title">Art der Datenanzeige</string>
|
||||||
|
|
||||||
|
<string name="settings_backup">Datensicherung (BETA)</string>
|
||||||
|
<string name="settings_sd_backup">SD-Karten-Sicherung</string>
|
||||||
|
<string name="settings_backup_to_sd">Jetzt sichern</string>
|
||||||
|
<string name="settings_backup_to_sd_summary">Eine Kopie aller Deiner Tracks und Einstellungen auf die SD-Karte schreiben</string>
|
||||||
|
<string name="settings_restore_from_sd">Jetzt wiederherstellen</string>
|
||||||
|
<string name="settings_restore_from_sd_summary">Alle Tracks und Einstellungen von der SD-Karte holen.</string>
|
||||||
|
<string name="settings_no_backup_while_recording">Während ein Track aufgezeichnet wird, kann nicht mit der Datensicherung gearbeitet werden.</string>
|
||||||
|
|
||||||
|
<!-- Backups -->
|
||||||
|
<string name="restore_overwrites_warning">Eine Wiederherstellung von der SD-Karte ÜBERSCHREIBT alle vorhandenen Tracks und Einstellungen. Willst Du das wirklich?</string>
|
||||||
|
<string name="select_backup_to_restore">Wähle die wiederherzustellende Datensicherung aus</string>
|
||||||
|
<string name="no_backups">Keine Datensicherungen gefunden.</string>
|
||||||
|
<string name="backup_write_progress_message">Schreibe alle Tracks und Einstellungen auf die SD-Karte. Dies kann eine Weile dauern...</string>
|
||||||
|
<string name="backup_import_progress_message">Lese alle Tracks und Einstellungen von der SD-Karte. Dies kann eine Weile dauern...</string>
|
||||||
|
|
||||||
<!-- MyTracksSky -->
|
<!-- MyTracksSky -->
|
||||||
<string name="mytracks_sky">GPS-Satelliten</string>
|
<string name="mytracks_sky">GPS-Satelliten</string>
|
||||||
|
|
||||||
<!-- MyMaps -->
|
<!-- MyMaps -->
|
||||||
<string name="select_map_message">Wähle eine Karte von Deinem Konto aus:</string>
|
<string name="select_map_message">Wähle eine Karte von Deinem Konto aus</string>
|
||||||
<string name="create_new_map">Neue Karte erstellen…</string>
|
<string name="create_new_map">Neue Karte erstellen…</string>
|
||||||
<string name="map_list_title">An Google My Maps senden</string>
|
<string name="map_list_title">An Google My Maps senden</string>
|
||||||
<string name="maps_list_loading">Karten werden geladen…</string>
|
<string name="maps_list_loading">Karten werden geladen…</string>
|
||||||
<string name="maps_list_failed">Ihre Karten konnten im Augenblick nicht geladen werden!</string>
|
<string name="maps_list_failed">Deine Karten konnten im Augenblick nicht geladen werden!</string>
|
||||||
<string name="open_map">Diese Karte auswählen</string>
|
<string name="open_map">Diese Karte auswählen</string>
|
||||||
<string name="edit_map_details">Kartendetails bearbeiten</string>
|
<string name="edit_map_details">Kartendetails bearbeiten</string>
|
||||||
<string name="share_map">Karte mit Freunden teilen</string>
|
<string name="share_map">Karte mit Freunden teilen</string>
|
||||||
<string name="share_track">Track mit Freunden teilen</string>
|
<string name="share_track">Track mit Freunden teilen</string>
|
||||||
<string name="delete_map">Karte vom Konto löschen</string>
|
<string name="delete_map">Karte vom Konto löschen</string>
|
||||||
<string name="map_title">Kartentitel:</string>
|
<string name="map_title">Kartentitel</string>
|
||||||
<string name="map_description">Trackbeschreibung:</string>
|
<string name="map_description">Trackbeschreibung</string>
|
||||||
<string name="map_searchable_edit">Diese Karte und Ihren Inhalt in Suchergebnissen sichtbar machen.</string>
|
<string name="map_searchable_edit">Diese Karte und ihren Inhalt in Suchergebnissen sichtbar machen.</string>
|
||||||
<string name="map_not_searchable_edit">Diese Karte und Ihren Inhalt nicht in Suchergebnissen sichtbar machen.</string>
|
<string name="map_not_searchable_edit">Diese Karte und ihren Inhalt nicht in Suchergebnissen sichtbar machen.</string>
|
||||||
<string name="map_searchable">Diese Karte und Ihr Inhalt sind in Suchergebnissen sichtbar.</string>
|
<string name="map_searchable">Diese Karte und ihr Inhalt sind in Suchergebnissen sichtbar.</string>
|
||||||
<string name="map_not_searchable">Weder diese Karte noch Ihr Inhalt sind in Suchergebnissen sichtbar, allerdings können Sie trotzdem von anderen durch einen direkten Link angezeigt werden.</string>
|
<string name="map_not_searchable">Weder diese Karte noch ihr Inhalt sind in Suchergebnissen sichtbar, allerdings kann sie trotzdem von anderen durch einen direkten Link angezeigt werden.</string>
|
||||||
<string name="close">Schließen</string>
|
<string name="close">Schließen</string>
|
||||||
<string name="edit">Bearbeiten</string>
|
<string name="edit">Bearbeiten</string>
|
||||||
<string name="cancel">Abbrechen</string>
|
<string name="cancel">Abbrechen</string>
|
||||||
@@ -222,6 +268,8 @@ limitations under the License.
|
|||||||
<string name="send_track_body_format">Vielleicht interessierst Du Dich für diese Track:
|
<string name="send_track_body_format">Vielleicht interessierst Du Dich für diese Track:
|
||||||
|
|
||||||
%s.</string>
|
%s.</string>
|
||||||
|
|
||||||
|
<!-- Visibility -->
|
||||||
<string name="public_map">Öffentlich</string>
|
<string name="public_map">Öffentlich</string>
|
||||||
<string name="unlisted_map">Nicht in Suchergebnissen enthalten.</string>
|
<string name="unlisted_map">Nicht in Suchergebnissen enthalten.</string>
|
||||||
<string name="mapslist_no_maps_available">Du hast noch keine Karten.</string>
|
<string name="mapslist_no_maps_available">Du hast noch keine Karten.</string>
|
||||||
@@ -229,11 +277,11 @@ limitations under the License.
|
|||||||
<!-- Statistics View -->
|
<!-- Statistics View -->
|
||||||
<!-- Average Moving -->
|
<!-- Average Moving -->
|
||||||
<string name="average_moving_speed_label">Durchschnitt in Bew.</string>
|
<string name="average_moving_speed_label">Durchschnitt in Bew.</string>
|
||||||
<string name="average_moving_pace_label">Durchschnitt in Bew.</string>
|
<string name="average_moving_pace_label">Pace in Bew.</string>
|
||||||
|
|
||||||
<!-- Average -->
|
<!-- Average -->
|
||||||
<string name="average_speed_label">Durchschnittsgeschw.</string>
|
<string name="average_speed_label">Durchschnittsgeschw.</string>
|
||||||
<string name="average_pace_label">Durchschnittstempo</string>
|
<string name="average_pace_label">Durchschnitts-Pace</string>
|
||||||
|
|
||||||
<string name="elevation_chart_name">Höhenprofil</string>
|
<string name="elevation_chart_name">Höhenprofil</string>
|
||||||
<string name="elevation_gain_label">Höhengewinn</string>
|
<string name="elevation_gain_label">Höhengewinn</string>
|
||||||
@@ -244,7 +292,7 @@ limitations under the License.
|
|||||||
<!-- Min -->
|
<!-- Min -->
|
||||||
<string name="min_elevation_label">Niedrigste Höhenlage</string>
|
<string name="min_elevation_label">Niedrigste Höhenlage</string>
|
||||||
<string name="min_grade_label">Minimale Steigung</string>
|
<string name="min_grade_label">Minimale Steigung</string>
|
||||||
<string name="min_pace_label">Schnellstes Tempo</string>
|
<string name="min_pace_label">Minimaler Pace</string>
|
||||||
|
|
||||||
<!-- Max -->
|
<!-- Max -->
|
||||||
<string name="max_elevation_label">Höchste Höhenlage</string>
|
<string name="max_elevation_label">Höchste Höhenlage</string>
|
||||||
@@ -254,14 +302,14 @@ limitations under the License.
|
|||||||
<string name="loading_track">Lade Track…</string>
|
<string name="loading_track">Lade Track…</string>
|
||||||
|
|
||||||
<!-- Chart Settings -->
|
<!-- Chart Settings -->
|
||||||
<string name="chart_settings">Diagram Einstellungen</string>
|
<string name="chart_settings">Diagramm-Einstellungen</string>
|
||||||
<!-- X Axis -->
|
<!-- X Axis -->
|
||||||
<string name="x_axis">X Achse</string>
|
<string name="x_axis">X-Achse</string>
|
||||||
<string name="by_distance">Nach Entfernung</string>
|
<string name="by_distance">Nach Entfernung</string>
|
||||||
<string name="by_time">Nach Zeit</string>
|
<string name="by_time">Nach Zeit</string>
|
||||||
|
|
||||||
<!-- Y Axis -->
|
<!-- Y Axis -->
|
||||||
<string name="y_axis">Y Achse</string>
|
<string name="y_axis">Y-Achse</string>
|
||||||
|
|
||||||
<!-- Units -->
|
<!-- Units -->
|
||||||
<!-- Time -->
|
<!-- Time -->
|
||||||
@@ -282,7 +330,7 @@ limitations under the License.
|
|||||||
<string name="kilometer_per_hour_long">Kilometer pro Stunde</string>
|
<string name="kilometer_per_hour_long">Kilometer pro Stunde</string>
|
||||||
<string name="per_kilometer">pro Kilometer</string>
|
<string name="per_kilometer">pro Kilometer</string>
|
||||||
<string name="mile_per_hour_long">Meilen pro Stunde</string>
|
<string name="mile_per_hour_long">Meilen pro Stunde</string>
|
||||||
<string name="per_mile">pro meile</string>
|
<string name="per_mile">pro Meile</string>
|
||||||
|
|
||||||
<!-- Stats Labels -->
|
<!-- Stats Labels -->
|
||||||
<string name="moving_time_label">Zeit in Bewegung</string>
|
<string name="moving_time_label">Zeit in Bewegung</string>
|
||||||
@@ -290,10 +338,14 @@ limitations under the License.
|
|||||||
<string name="time_label">Zeit</string>
|
<string name="time_label">Zeit</string>
|
||||||
<string name="sd_unavail">SD-Karte nicht verfügbar</string>
|
<string name="sd_unavail">SD-Karte nicht verfügbar</string>
|
||||||
<string name="speed">Geschwindigkeit</string>
|
<string name="speed">Geschwindigkeit</string>
|
||||||
<string name="start_trip">Sie müssen erst eine Strecke zurücklegen.</string>
|
<string name="start_trip">Du musst erst eine Aufzeichnung beginnen.</string>
|
||||||
<string name="statistics">Statistik</string>
|
<string name="statistics">Statistik</string>
|
||||||
<string name="total_distance_label">Gesamtentfernung</string>
|
<string name="total_distance_label">Gesamtentfernung</string>
|
||||||
<string name="distance_label">Entfernung</string>
|
<string name="distance_label">Entfernung</string>
|
||||||
|
<string name="power">Energie</string>
|
||||||
|
<string name="cadence">Kadenz</string>
|
||||||
|
<string name="heart_rate">Herzfrequenz</string>
|
||||||
|
<string name="max_heart_rate">Höchste Herzfrequenz</string>
|
||||||
<string name="waiting">Bitte warten…</string>
|
<string name="waiting">Bitte warten…</string>
|
||||||
|
|
||||||
<!-- End User License Agreement -->
|
<!-- End User License Agreement -->
|
||||||
@@ -316,22 +368,24 @@ limitations under the License.
|
|||||||
|
|
||||||
<!-- Getting the account to upload to. -->
|
<!-- Getting the account to upload to. -->
|
||||||
<string name="no_account_found_title">Kein Konto vorhanden</string>
|
<string name="no_account_found_title">Kein Konto vorhanden</string>
|
||||||
<string name="no_account_found">Kein Konto gefunden um Tracks zu versenden.</string>
|
<string name="no_account_found">Kein Konto gefunden, um Tracks zu versenden.</string>
|
||||||
<string name="choose_account_title">Wählen Sei ein Konto</string>
|
<string name="choose_account_title">Wähle ein Konto</string>
|
||||||
|
|
||||||
<!-- SD card -->
|
<!-- SD card -->
|
||||||
<string name="io_no_external_storage_found">Keine externes Speichermedium verfügbar. Stellen Sie sicher, dass eine SD-Karte vorhanden ist und nicht bereits von einem Computer darauf zugegriffen wird.</string>
|
<string name="io_no_external_storage_found">Keine externes Speichermedium verfügbar. Stelle sicher, dass eine SD-Karte vorhanden ist und nicht bereits von einem Computer darauf zugegriffen wird.</string>
|
||||||
<string name="io_write_failed">Die Datei kann nicht geschrieben werden.</string>
|
<string name="io_write_failed">Die Datei kann nicht geschrieben werden.</string>
|
||||||
|
<string name="io_read_failed">Die Datei konnte nicht gelesen werden.</string>
|
||||||
<string name="io_create_dir_failed">Das Verzeichnis auf der SD-Karte kann nicht erstellt werden.</string>
|
<string name="io_create_dir_failed">Das Verzeichnis auf der SD-Karte kann nicht erstellt werden.</string>
|
||||||
<string name="io_write_finished">Der Track wurde auf die SD-Karte geschrieben.</string>
|
<string name="io_write_finished">Der Track wurde auf die SD-Karte geschrieben.</string>
|
||||||
|
<string name="io_read_finished">Lesen von der SD-Karte beendet.</string>
|
||||||
|
|
||||||
<!-- VersionChecker -->
|
<!-- VersionChecker -->
|
||||||
<string name="version_check_title">Suche nach neuer Version</string>
|
<string name="version_check_title">Suche nach neuer Version</string>
|
||||||
<string name="version_check_upgrade_button">Jetzt aktualisieren</string>
|
<string name="version_check_upgrade_button">Jetzt aktualisieren</string>
|
||||||
<string name="version_check_continue_button">Fortfahren ohne zu aktualisieren</string>
|
<string name="version_check_continue_button">Fortfahren, ohne zu aktualisieren</string>
|
||||||
<string name="upgrade_required">Ihre Version von %1$s funktioniert möglicherweise nicht mehr richtig und wird nicht mehr unterstützt. Bitte aktualisieren Sie %1$s.</string>
|
<string name="upgrade_required">Deine Version von %1$s funktioniert möglicherweise nicht mehr richtig und wird nicht mehr unterstützt. Bitte aktualisiere %1$s.</string>
|
||||||
<string name="upgrade_recommended">Ihre Version von %1$s funktioniert möglicherweise nicht mehr richtig. Sie können sie jetzt aktualisieren, oder auf sie auf eigene Gefahr weiterverwenden. Einige Funktionen wie Datenaustausch mit Google-Diensten wird möglicherweise nicht mehr funktionieren, solange Sie die Software nicht aktualisieren.</string>
|
<string name="upgrade_recommended">Deine Version von %1$s funktioniert möglicherweise nicht mehr richtig. Du kannst sie jetzt aktualisieren, oder auf sie auf eigene Gefahr weiterverwenden. Einige Funktionen wie Datenaustausch mit Google-Diensten werden möglicherweise nicht mehr funktionieren, solange Du die Software nicht aktualisierst.</string>
|
||||||
<string name="upgrade_available">Eine neue Version von %1$s ist jetzt verfügbar. Sie können Ihre aktuelle Version ohne Probleme weiterverwenden, aber um die neuesten Funktionen in Anspruch nehmen zu können, müssen sie die Software aktualisieren.</string>
|
<string name="upgrade_available">Eine neue Version von %1$s ist jetzt verfügbar. Du kannst Deine installierte Version ohne Probleme weiterverwenden, aber um die neuesten Funktionen in Anspruch nehmen zu können, musst Du die Software aktualisieren.</string>
|
||||||
|
|
||||||
<!-- Welcome -->
|
<!-- Welcome -->
|
||||||
<string name="welcome">Willkommen</string>
|
<string name="welcome">Willkommen</string>
|
||||||
@@ -348,4 +402,40 @@ limitations under the License.
|
|||||||
$6 : Speed units (mph) : Pace units (per mile)
|
$6 : Speed units (mph) : Pace units (per mile)
|
||||||
-->
|
-->
|
||||||
<string name="announce_template">My Tracks %1$s %2$.2f %3$s in %4$s mit %5$s %6$s</string>
|
<string name="announce_template">My Tracks %1$s %2$.2f %3$s in %4$s mit %5$s %6$s</string>
|
||||||
|
|
||||||
|
<!-- Check Units -->
|
||||||
|
<string name="check_units_title">Einheitenbenachrichtigung</string>
|
||||||
|
<string name="check_units_message">Voreingestellt sind metrische Einheiten. Willst Du diese Einstellung ändern?</string>
|
||||||
|
|
||||||
|
<!-- Fake preference keys - never saved, but show options in the preferences screen -->
|
||||||
|
<string name="bluetooth_options">Bluetootheinstellungen</string>
|
||||||
|
<string name="bluetooth_pairing">Geräteverbindung</string>
|
||||||
|
<string name="bluetooth_pairing_summary">Öffnet Androids Bluetootheinstellungen, um Geräte zu verbinden.</string>
|
||||||
|
<string name="sensor_options">Sensoreinstellungen</string>
|
||||||
|
|
||||||
|
<!-- Bluetooth Sensor -->
|
||||||
|
<string name="bluetooth_connected">Verbunden mit %s</string>
|
||||||
|
<string name="bluetooth_connecting">Verbinde mit Bluetoothsensor ...</string>
|
||||||
|
<string name="bluetooth_not_connected">Bluetoothsensor nicht verbunden.</string>
|
||||||
|
|
||||||
|
<!-- Sensor State -->
|
||||||
|
<string name="sensor_data_time">Sensor Data Time</string>
|
||||||
|
<string name="power_meter_enabled">Energiemessung aktiviert</string>
|
||||||
|
<string name="heart_rate_monitor_enabled">Herzfrequenzmessung aktiviert</string>
|
||||||
|
<string name="no_sensor_manager">Keine Sensoren verfügbar</string>
|
||||||
|
<string name="enabled">Aktiviert</string>
|
||||||
|
<string name="connecting">Verbinde...</string>
|
||||||
|
<string name="connected">Verbunden</string>
|
||||||
|
<string name="disconnected">Getrennt</string>
|
||||||
|
<string name="no_sensor_service">Kein Sensor-Dienst</string>
|
||||||
|
<string name="searching">Suche...</string>
|
||||||
|
<string name="sending">Sende...</string>
|
||||||
|
|
||||||
|
<!-- Manifest description (not seen inside the app) -->
|
||||||
|
<string name="notification_permission_label">Track-Aufzeichnungs-Benachrichtigungen empfangen</string>
|
||||||
|
<string name="read_tracks_permission_label">Aufgezeichnete Trackdaten lesen</string>
|
||||||
|
<string name="write_tracks_permission_label">Aufgezeichnete Trackdaten schreiben, Starten/Anhalten des Aufzeichnens von Tracks</string>
|
||||||
|
<string name="notification_permission_description">Werde benachrichtigt, wenn die Aufzeichnung eines Tracks beginnt oder anhält.</string>
|
||||||
|
<string name="read_tracks_permission_description">Ermöglicht das Lesen von Trackdaten wie Messpunkten oder Wegpunkten.</string>
|
||||||
|
<string name="write_tracks_permission_description">Ermöglicht das Schreiben von Trackdaten wie beim Starten der Aufzeichnung oder beim Hinzufügen von Wegpunkten.</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.google.android.apps.mytracks;
|
package com.google.android.apps.mytracks;
|
||||||
|
|
||||||
|
import com.google.android.apps.mytracks.util.ApiFeatures;
|
||||||
import com.google.android.maps.mytracks.R;
|
import com.google.android.maps.mytracks.R;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
@@ -82,7 +83,8 @@ class CheckUnits {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static void recordCheckPerformed(SharedPreferences preferences) {
|
private static void recordCheckPerformed(SharedPreferences preferences) {
|
||||||
preferences.edit().putBoolean(PREFERENCE_UNITS_CHECKED, true).commit();
|
ApiFeatures.getInstance().getApiPlatformAdapter().applyPreferenceChanges(
|
||||||
|
preferences.edit().putBoolean(PREFERENCE_UNITS_CHECKED, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
private CheckUnits() {
|
private CheckUnits() {
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
package com.google.android.apps.mytracks;
|
package com.google.android.apps.mytracks;
|
||||||
|
|
||||||
|
import com.google.android.apps.mytracks.util.ApiFeatures;
|
||||||
import com.google.android.apps.mytracks.util.ResourceUtils;
|
import com.google.android.apps.mytracks.util.ResourceUtils;
|
||||||
import com.google.android.maps.mytracks.R;
|
import com.google.android.maps.mytracks.R;
|
||||||
|
|
||||||
@@ -77,7 +78,8 @@ class Eula {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static void accept(Activity activity, SharedPreferences preferences) {
|
private static void accept(Activity activity, SharedPreferences preferences) {
|
||||||
preferences.edit().putBoolean(PREFERENCE_EULA_ACCEPTED, true).commit();
|
ApiFeatures.getInstance().getApiPlatformAdapter().applyPreferenceChanges(
|
||||||
|
preferences.edit().putBoolean(PREFERENCE_EULA_ACCEPTED, true));
|
||||||
Intent startIntent = new Intent(activity, WelcomeActivity.class);
|
Intent startIntent = new Intent(activity, WelcomeActivity.class);
|
||||||
activity.startActivityForResult(startIntent, MyTracksConstants.WELCOME);
|
activity.startActivityForResult(startIntent, MyTracksConstants.WELCOME);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ import com.google.android.apps.mytracks.services.StatusAnnouncerFactory;
|
|||||||
import com.google.android.apps.mytracks.services.TrackRecordingService;
|
import com.google.android.apps.mytracks.services.TrackRecordingService;
|
||||||
import com.google.android.apps.mytracks.util.ApiFeatures;
|
import com.google.android.apps.mytracks.util.ApiFeatures;
|
||||||
import com.google.android.apps.mytracks.util.FileUtils;
|
import com.google.android.apps.mytracks.util.FileUtils;
|
||||||
|
import com.google.android.apps.mytracks.util.MyTracksUtils;
|
||||||
import com.google.android.maps.mytracks.R;
|
import com.google.android.maps.mytracks.R;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
@@ -251,6 +252,11 @@ public class MyTracks extends TabActivity implements OnTouchListener,
|
|||||||
Log.d(MyTracksConstants.TAG, "MyTracks.onCreate");
|
Log.d(MyTracksConstants.TAG, "MyTracks.onCreate");
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
instance = this;
|
instance = this;
|
||||||
|
ApiFeatures apiFeatures = ApiFeatures.getInstance();
|
||||||
|
if (!MyTracksUtils.isRelease(this)) {
|
||||||
|
apiFeatures.getApiPlatformAdapter().enableStrictMode();
|
||||||
|
}
|
||||||
|
|
||||||
providerUtils = MyTracksProviderUtils.Factory.get(this);
|
providerUtils = MyTracksProviderUtils.Factory.get(this);
|
||||||
menuManager = new MenuManager(this);
|
menuManager = new MenuManager(this);
|
||||||
sharedPreferences = getSharedPreferences(MyTracksSettings.SETTINGS_NAME, 0);
|
sharedPreferences = getSharedPreferences(MyTracksSettings.SETTINGS_NAME, 0);
|
||||||
@@ -258,7 +264,7 @@ public class MyTracks extends TabActivity implements OnTouchListener,
|
|||||||
|
|
||||||
// The volume we want to control is the Text-To-Speech volume
|
// The volume we want to control is the Text-To-Speech volume
|
||||||
int volumeStream =
|
int volumeStream =
|
||||||
new StatusAnnouncerFactory(ApiFeatures.getInstance()).getVolumeStream();
|
new StatusAnnouncerFactory(apiFeatures).getVolumeStream();
|
||||||
setVolumeControlStream(volumeStream);
|
setVolumeControlStream(volumeStream);
|
||||||
|
|
||||||
// We don't need a window title bar:
|
// We don't need a window title bar:
|
||||||
@@ -1058,10 +1064,10 @@ public class MyTracks extends TabActivity implements OnTouchListener,
|
|||||||
* @param trackId the id of the track
|
* @param trackId the id of the track
|
||||||
*/
|
*/
|
||||||
public void setSelectedTrackId(final long trackId) {
|
public void setSelectedTrackId(final long trackId) {
|
||||||
sharedPreferences
|
ApiFeatures.getInstance().getApiPlatformAdapter().applyPreferenceChanges(
|
||||||
.edit()
|
sharedPreferences
|
||||||
.putLong(getString(R.string.selected_track_key), trackId)
|
.edit()
|
||||||
.commit();
|
.putLong(getString(R.string.selected_track_key), trackId));
|
||||||
}
|
}
|
||||||
|
|
||||||
long getSelectedTrackId() {
|
long getSelectedTrackId() {
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
package com.google.android.apps.mytracks;
|
package com.google.android.apps.mytracks;
|
||||||
|
|
||||||
import com.google.android.apps.mytracks.content.MyTracksProviderUtils;
|
import com.google.android.apps.mytracks.content.MyTracksProviderUtils;
|
||||||
|
import com.google.android.apps.mytracks.util.ApiFeatures;
|
||||||
import com.google.android.maps.mytracks.R;
|
import com.google.android.maps.mytracks.R;
|
||||||
|
|
||||||
import android.app.AlertDialog;
|
import android.app.AlertDialog;
|
||||||
@@ -63,7 +64,7 @@ public class MyTracksDeleteAllTracks extends Handler {
|
|||||||
context.getSharedPreferences(MyTracksSettings.SETTINGS_NAME, 0);
|
context.getSharedPreferences(MyTracksSettings.SETTINGS_NAME, 0);
|
||||||
SharedPreferences.Editor editor = prefs.edit();
|
SharedPreferences.Editor editor = prefs.edit();
|
||||||
editor.putLong(context.getString(R.string.selected_track_key), -1);
|
editor.putLong(context.getString(R.string.selected_track_key), -1);
|
||||||
editor.commit();
|
ApiFeatures.getInstance().getApiPlatformAdapter().applyPreferenceChanges(editor);
|
||||||
if (done != null) {
|
if (done != null) {
|
||||||
Handler h = new Handler();
|
Handler h = new Handler();
|
||||||
h.post(done);
|
h.post(done);
|
||||||
|
|||||||
@@ -62,24 +62,18 @@ public class ApiFeatures {
|
|||||||
* Allow subclasses for mocking, but no direct instantiation.
|
* Allow subclasses for mocking, but no direct instantiation.
|
||||||
*/
|
*/
|
||||||
protected ApiFeatures() {
|
protected ApiFeatures() {
|
||||||
if (getApiLevel() >= 5) {
|
if (getApiLevel() >= 9) {
|
||||||
try {
|
apiPlatformAdapter = new GingerbreadPlatformAdapter();
|
||||||
Class<?> clazz = Class.forName(
|
} else if (getApiLevel() >= 5) {
|
||||||
"com.google.android.apps.mytracks.util.EclairPlatformAdapter");
|
apiPlatformAdapter = new EclairPlatformAdapter();
|
||||||
apiPlatformAdapter = (ApiPlatformAdapter) clazz.newInstance();
|
} else {
|
||||||
} catch (Exception e) {
|
|
||||||
Log.i(MyTracksConstants.TAG, "ApiFeatures: Unable to instantiate Eclair"
|
|
||||||
+ " platform adapter", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (apiPlatformAdapter == null) {
|
|
||||||
Log.i(MyTracksConstants.TAG,
|
Log.i(MyTracksConstants.TAG,
|
||||||
"ApiFeatures: Using default platform adapter");
|
"ApiFeatures: Using default platform adapter");
|
||||||
// Cupcake adapter is always supported, so it's safe to do static linkage.
|
// Cupcake adapter is always supported, so it's safe to do static linkage.
|
||||||
apiPlatformAdapter = new CupcakePlatformAdapter();
|
apiPlatformAdapter = new CupcakePlatformAdapter();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public ApiPlatformAdapter getApiPlatformAdapter() {
|
public ApiPlatformAdapter getApiPlatformAdapter() {
|
||||||
return apiPlatformAdapter;
|
return apiPlatformAdapter;
|
||||||
}
|
}
|
||||||
@@ -107,7 +101,11 @@ public class ApiFeatures {
|
|||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean hasStrictMode() {
|
||||||
|
return getApiLevel() >= 9;
|
||||||
|
}
|
||||||
|
|
||||||
// Visible for testing.
|
// Visible for testing.
|
||||||
protected int getApiLevel() {
|
protected int getApiLevel() {
|
||||||
return ANDROID_API_LEVEL;
|
return ANDROID_API_LEVEL;
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ package com.google.android.apps.mytracks.util;
|
|||||||
import android.app.Notification;
|
import android.app.Notification;
|
||||||
import android.app.NotificationManager;
|
import android.app.NotificationManager;
|
||||||
import android.app.Service;
|
import android.app.Service;
|
||||||
|
import android.content.SharedPreferences;
|
||||||
import android.os.HandlerThread;
|
import android.os.HandlerThread;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -57,4 +58,15 @@ public interface ApiPlatformAdapter {
|
|||||||
* @return true whether the handler has been stopped or not.
|
* @return true whether the handler has been stopped or not.
|
||||||
*/
|
*/
|
||||||
boolean stopHandlerThread(HandlerThread handlerThread);
|
boolean stopHandlerThread(HandlerThread handlerThread);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Applies all changes done to the given preferences editor.
|
||||||
|
* Changes may or may not be applied immediately.
|
||||||
|
*/
|
||||||
|
void applyPreferenceChanges(SharedPreferences.Editor editor);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enables strict mode where supported, only if this is a development build.
|
||||||
|
*/
|
||||||
|
void enableStrictMode();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ package com.google.android.apps.mytracks.util;
|
|||||||
import android.app.Notification;
|
import android.app.Notification;
|
||||||
import android.app.NotificationManager;
|
import android.app.NotificationManager;
|
||||||
import android.app.Service;
|
import android.app.Service;
|
||||||
|
import android.content.SharedPreferences.Editor;
|
||||||
import android.os.HandlerThread;
|
import android.os.HandlerThread;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -50,4 +51,14 @@ public class CupcakePlatformAdapter implements ApiPlatformAdapter {
|
|||||||
// Do nothing, as Cupcake doesn't provide quit().
|
// Do nothing, as Cupcake doesn't provide quit().
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void applyPreferenceChanges(Editor editor) {
|
||||||
|
editor.commit();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void enableStrictMode() {
|
||||||
|
// Not supported
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ package com.google.android.apps.mytracks.util;
|
|||||||
import android.app.Notification;
|
import android.app.Notification;
|
||||||
import android.app.NotificationManager;
|
import android.app.NotificationManager;
|
||||||
import android.app.Service;
|
import android.app.Service;
|
||||||
|
import android.content.SharedPreferences.Editor;
|
||||||
import android.os.HandlerThread;
|
import android.os.HandlerThread;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -45,4 +46,14 @@ public class EclairPlatformAdapter implements ApiPlatformAdapter {
|
|||||||
public boolean stopHandlerThread(HandlerThread handlerThread) {
|
public boolean stopHandlerThread(HandlerThread handlerThread) {
|
||||||
return handlerThread.quit();
|
return handlerThread.quit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void applyPreferenceChanges(Editor editor) {
|
||||||
|
editor.commit();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void enableStrictMode() {
|
||||||
|
// Not supported
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
package com.google.android.apps.mytracks.util;
|
||||||
|
|
||||||
|
import com.google.android.apps.mytracks.MyTracksConstants;
|
||||||
|
|
||||||
|
import android.content.SharedPreferences.Editor;
|
||||||
|
import android.os.StrictMode;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Gingerbread (API level 9) specific implememntation of the
|
||||||
|
* {@link ApiPlatformAdapter}.
|
||||||
|
*
|
||||||
|
* @author Rodrigo Damazio
|
||||||
|
*/
|
||||||
|
public class GingerbreadPlatformAdapter extends EclairPlatformAdapter {
|
||||||
|
@Override
|
||||||
|
public void applyPreferenceChanges(Editor editor) {
|
||||||
|
// Apply asynchronously
|
||||||
|
editor.apply();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void enableStrictMode() {
|
||||||
|
Log.d(MyTracksConstants.TAG, "Enabling strict mode");
|
||||||
|
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
|
||||||
|
.detectDiskWrites()
|
||||||
|
.detectNetwork()
|
||||||
|
.penaltyLog()
|
||||||
|
.build());
|
||||||
|
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
|
||||||
|
.detectAll()
|
||||||
|
.penaltyLog()
|
||||||
|
.penaltyDeath()
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -21,7 +21,12 @@ import com.google.android.apps.mytracks.stats.TripStatistics;
|
|||||||
|
|
||||||
import com.google.android.maps.GeoPoint;
|
import com.google.android.maps.GeoPoint;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.pm.PackageManager;
|
||||||
|
import android.content.pm.PackageManager.NameNotFoundException;
|
||||||
|
import android.content.pm.Signature;
|
||||||
import android.location.Location;
|
import android.location.Location;
|
||||||
|
import android.os.StrictMode;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -34,6 +39,7 @@ import java.util.Stack;
|
|||||||
* @author Leif Hendrik Wilden
|
* @author Leif Hendrik Wilden
|
||||||
*/
|
*/
|
||||||
public class MyTracksUtils {
|
public class MyTracksUtils {
|
||||||
|
private static final int RELEASE_SIGNATURE_HASHCODE = -1855564782;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Computes the distance on the two sphere between the point c0 and the line
|
* Computes the distance on the two sphere between the point c0 and the line
|
||||||
@@ -246,6 +252,25 @@ public class MyTracksUtils {
|
|||||||
(int) (location.getLongitude() * 1E6));
|
(int) (location.getLongitude() * 1E6));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns whether or not this is a release build.
|
||||||
|
*/
|
||||||
|
public static boolean isRelease(Context context) {
|
||||||
|
try {
|
||||||
|
Signature [] sigs = context.getPackageManager().getPackageInfo(
|
||||||
|
context.getPackageName(), PackageManager.GET_SIGNATURES).signatures;
|
||||||
|
for (Signature sig : sigs) {
|
||||||
|
if (sig.hashCode() == RELEASE_SIGNATURE_HASHCODE) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (NameNotFoundException e) {
|
||||||
|
Log.e(MyTracksConstants.TAG, "Unable to get signatures", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This is a utility class w/ only static memebers.
|
* This is a utility class w/ only static memebers.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -8,5 +8,5 @@
|
|||||||
# project structure.
|
# project structure.
|
||||||
|
|
||||||
# Project target.
|
# Project target.
|
||||||
target=android-8
|
target=android-9
|
||||||
android.library=true
|
android.library=true
|
||||||
|
|||||||
+12
-8
@@ -861,18 +861,22 @@ public class MyTracksProviderUtilsImpl implements MyTracksProviderUtils {
|
|||||||
String select = TracksColumns._ID + "=" + id;
|
String select = TracksColumns._ID + "=" + id;
|
||||||
return findTrackBy(select);
|
return findTrackBy(select);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<Track> getAllTracks() {
|
public List<Track> getAllTracks() {
|
||||||
Cursor cursor = getTracksCursor(null);
|
Cursor cursor = getTracksCursor(null);
|
||||||
if (cursor == null || !cursor.moveToFirst()) {
|
ArrayList<Track> tracks = new ArrayList<Track>();
|
||||||
return new ArrayList<Track>();
|
if (cursor != null) {
|
||||||
}
|
tracks.ensureCapacity(cursor.getCount());
|
||||||
|
|
||||||
List<Track> tracks = new ArrayList<Track>(cursor.getCount());
|
if (cursor.moveToFirst()) {
|
||||||
do {
|
do {
|
||||||
tracks.add(createTrack(cursor));
|
tracks.add(createTrack(cursor));
|
||||||
} while(cursor.moveToNext());
|
} while(cursor.moveToNext());
|
||||||
|
}
|
||||||
|
|
||||||
|
cursor.close();
|
||||||
|
}
|
||||||
|
|
||||||
return tracks;
|
return tracks;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,4 +10,4 @@
|
|||||||
# Indicates whether an apk should be generated for each density.
|
# Indicates whether an apk should be generated for each density.
|
||||||
split.density=false
|
split.density=false
|
||||||
# Project target.
|
# Project target.
|
||||||
target=Google Inc.:Google APIs:8
|
target=Google Inc.:Google APIs:9
|
||||||
|
|||||||
+6
-1
@@ -38,7 +38,7 @@ public class PreferenceBackupHelperTest extends TestCase {
|
|||||||
*/
|
*/
|
||||||
private class MockPreferenceEditor implements SharedPreferences.Editor {
|
private class MockPreferenceEditor implements SharedPreferences.Editor {
|
||||||
private Map<String, Object> newPreferences = new HashMap<String, Object>(preferenceValues);
|
private Map<String, Object> newPreferences = new HashMap<String, Object>(preferenceValues);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Editor clear() {
|
public Editor clear() {
|
||||||
newPreferences.clear();
|
newPreferences.clear();
|
||||||
@@ -51,6 +51,11 @@ public class PreferenceBackupHelperTest extends TestCase {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void apply() {
|
||||||
|
commit();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Editor putBoolean(String key, boolean value) {
|
public Editor putBoolean(String key, boolean value) {
|
||||||
return put(key, value);
|
return put(key, value);
|
||||||
|
|||||||
+1
-1
@@ -502,7 +502,7 @@ public class TrackRecordingServiceTest
|
|||||||
public void testDeleteAllTracks_trackInProgress() throws Exception {
|
public void testDeleteAllTracks_trackInProgress() throws Exception {
|
||||||
createDummyTrack(123, -1, true);
|
createDummyTrack(123, -1, true);
|
||||||
assertEquals(1, providerUtils.getAllTracks().size());
|
assertEquals(1, providerUtils.getAllTracks().size());
|
||||||
|
|
||||||
ITrackRecordingService service = bindAndGetService(createStartIntent());
|
ITrackRecordingService service = bindAndGetService(createStartIntent());
|
||||||
assertTrue(service.isRecording());
|
assertTrue(service.isRecording());
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -43,9 +43,9 @@ public class SensorManagerFactoryTest extends AndroidTestCase {
|
|||||||
|
|
||||||
private void assertClassForName(Class<?> c, int i) {
|
private void assertClassForName(Class<?> c, int i) {
|
||||||
sharedPreferences.edit()
|
sharedPreferences.edit()
|
||||||
.putString(getContext().getString(R.string.sensor_type_key),
|
.putString(getContext().getString(R.string.sensor_type_key),
|
||||||
getContext().getString(i))
|
getContext().getString(i))
|
||||||
.commit();
|
.commit();
|
||||||
SensorManager sm = SensorManagerFactory.getSensorManager(getContext());
|
SensorManager sm = SensorManagerFactory.getSensorManager(getContext());
|
||||||
assertNotNull(sm);
|
assertNotNull(sm);
|
||||||
assertTrue(c.isInstance(sm));
|
assertTrue(c.isInstance(sm));
|
||||||
|
|||||||
@@ -54,7 +54,8 @@ limitations under the License.
|
|||||||
<uses-feature android:name="android.hardware.telephony" android:required="true"/>
|
<uses-feature android:name="android.hardware.telephony" android:required="true"/>
|
||||||
<uses-feature android:name="android.hardware.telephony.gsm" android:required="false"/>
|
<uses-feature android:name="android.hardware.telephony.gsm" android:required="false"/>
|
||||||
<uses-sdk android:minSdkVersion="3" />
|
<uses-sdk android:minSdkVersion="3" />
|
||||||
<supports-screens android:largeScreens="true"
|
<supports-screens android:xlargeScreens="true"
|
||||||
|
android:largeScreens="true"
|
||||||
android:normalScreens="true"
|
android:normalScreens="true"
|
||||||
android:smallScreens="true"
|
android:smallScreens="true"
|
||||||
android:anyDensity="true" />
|
android:anyDensity="true" />
|
||||||
|
|||||||
@@ -8,5 +8,6 @@
|
|||||||
# project structure.
|
# project structure.
|
||||||
|
|
||||||
# Project target.
|
# Project target.
|
||||||
target=Google Inc.:Google APIs:8
|
target=Google Inc.:Google APIs:9
|
||||||
|
proguard.config=proguard.cfg
|
||||||
android.library.reference.1=../MyTracksLib/
|
android.library.reference.1=../MyTracksLib/
|
||||||
|
|||||||
@@ -8,4 +8,4 @@
|
|||||||
# project structure.
|
# project structure.
|
||||||
|
|
||||||
# Project target.
|
# Project target.
|
||||||
target=Google Inc.:Google APIs:8
|
target=Google Inc.:Google APIs:9
|
||||||
|
|||||||
Reference in New Issue
Block a user