forked from upstream-mirrors/OpenTracks
Compare commits
29 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3eb89d7899 | |||
| f12ff4a625 | |||
| 71dac06ce8 | |||
| 07090cd72c | |||
| 26a20fe32d | |||
| d74ef256d7 | |||
| 0392ba5128 | |||
| 3d12ebdaa3 | |||
| b3cb5e8091 | |||
| 8f9cbcc077 | |||
| 14b6746dff | |||
| a5eca8fa64 | |||
| 498ee20e2a | |||
| 2207865a70 | |||
| 8073f12947 | |||
| cacfcbd4d6 | |||
| 08673de331 | |||
| aecd1504f3 | |||
| f3bf42083a | |||
| 8a9cd40bd5 | |||
| fee1d1a871 | |||
| 0787ae6686 | |||
| 747ef9fc56 | |||
| 5911d60818 | |||
| b89dbf5819 | |||
| 99e2c1f38d | |||
| faa1ffe53b | |||
| 8461122df0 | |||
| 2ca7aa8f1d |
@@ -1,3 +1,6 @@
|
||||
# We have flaky test results due to performance limitations in Github Actions.
|
||||
# Happens too often nowadays; See https://github.com/OpenTracksApp/OpenTracks/issues/1409
|
||||
|
||||
#https://github.com/marketplace/actions/android-emulator-runner
|
||||
name: Test
|
||||
on:
|
||||
@@ -129,6 +129,7 @@ The Public API is disabled by default to protect the user's privacy, but it can
|
||||
| [Golden Cheetah 3.5](https://www.goldencheetah.org/) | ? | [no](https://github.com/GoldenCheetah/GoldenCheetah/issues/4271) | [no](https://github.com/GoldenCheetah/GoldenCheetah/issues/4271) |
|
||||
| [GpxPod](https://apps.nextcloud.com/apps/gpxpod) | ? | ? | ? |
|
||||
| [OsmAnd](https://github.com/osmandapp/OsmAnd) | ? | [no](https://github.com/osmandapp/OsmAnd/issues/15271) | [no](https://github.com/osmandapp/OsmAnd/issues/15271) |
|
||||
| [FitTrackee](https://github.com/SamR1/FitTrackee) | yes | n/a | n/a |
|
||||
|
||||
## Dashboard API (incl. map)
|
||||
|
||||
|
||||
+6
-8
@@ -6,7 +6,7 @@ buildscript {
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
||||
classpath 'com.android.tools.build:gradle:7.3.1'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,8 +59,8 @@ android {
|
||||
|
||||
defaultConfig {
|
||||
applicationId "de.dennisguse.opentracks"
|
||||
versionCode 5051
|
||||
versionName "v4.1.1"
|
||||
versionCode 5080
|
||||
versionName "v4.1.2"
|
||||
|
||||
buildConfigField "String", "VERSION_NAME_FULL", "\"${getVersionName()}\""
|
||||
|
||||
@@ -122,12 +122,10 @@ android {
|
||||
dependencies {
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.2.2'
|
||||
|
||||
implementation 'androidx.appcompat:appcompat:1.5.1'
|
||||
implementation 'androidx.lifecycle:lifecycle-viewmodel:2.5.1'
|
||||
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1'
|
||||
implementation 'androidx.appcompat:appcompat:1.6.0-rc01'
|
||||
implementation 'androidx.preference:preference:1.2.0'
|
||||
implementation 'androidx.documentfile:documentfile:1.0.1'
|
||||
implementation 'com.google.android.material:material:1.6.1'
|
||||
implementation 'com.google.android.material:material:1.7.0'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
|
||||
implementation 'androidx.core:core-splashscreen:1.0.0'
|
||||
|
||||
@@ -136,7 +134,7 @@ dependencies {
|
||||
androidTestImplementation 'androidx.test:rules:1.4.0'
|
||||
androidTestImplementation 'androidx.test:runner:1.4.0'
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
|
||||
androidTestImplementation 'org.mockito:mockito-android:4.8.0'
|
||||
androidTestImplementation 'org.mockito:mockito-android:4.8.1'
|
||||
|
||||
androidTestUtil 'androidx.test:orchestrator:1.4.1'
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
v4.1.2: OpenTracks
|
||||
|
||||
Changes:
|
||||
- Voice announcements only use on decimal for distance
|
||||
|
||||
Bugfix:
|
||||
- Crash when stopping (race condition)
|
||||
|
||||
Developer:
|
||||
- Github actions: disabled instrumentation testing (too slow)
|
||||
- Tests are done with only fake GPS data
|
||||
@@ -0,0 +1,16 @@
|
||||
v3.18.6: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- "Taispeáin ar léarscáil" - feidhmiúlacht trí KML in ionad KMZ
|
||||
- Ní chuimsíonn fógra gutha ainm na haipe
|
||||
- Agus é ag taifeadadh: déantar gnóthachan/caillteanas ingearchló a nuashonrú gach soicind
|
||||
- Tuairiscí an tsiopa aistrithe
|
||||
|
||||
Maoláin:
|
||||
- Aistriúcháin fógartha gutha seasta neamhbhailí
|
||||
|
||||
Forbróir:
|
||||
- ceadanna Android12 (BLUETOOTH_SCAN)
|
||||
- ceadanna Android12 (ACCESS_COARSE_LOCATION)
|
||||
- Ag dearbhú do Trackpoints (tástáil)
|
||||
- Aistriúcháin neamhúsáidte bainte
|
||||
@@ -0,0 +1,8 @@
|
||||
v3.19.1: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Aistriúcháin nuashonraithe.
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Easpórtáil Gach Rianta fabht seasta.
|
||||
- Lean bug Track socraithe.
|
||||
@@ -0,0 +1,7 @@
|
||||
v3.20.0: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Agus tú ag taifeadadh: tá UI staitisticí inchumraithe anois
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Níor tugadh aird ar athrú ainm/catagóir an traic le linn an taifeadta (a tugadh isteach i v3.19.0)
|
||||
@@ -0,0 +1,6 @@
|
||||
v3.20.1: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Is féidir fógraí a úsáid anois de réir achair agus ama
|
||||
- Bíp fógraí mura bhfuil aon bhogearraí Téacs-go-hurlabhra suiteáilte
|
||||
- Baineadh minicíocht oiriúnaitheach suíomh GPS
|
||||
@@ -0,0 +1,11 @@
|
||||
v3.22.0: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Ní stórálfar láithreacha ach amháin má thaistilítear > an t-eatramh faid a thaifeadtar
|
||||
(feidhmiúlacht fágtha bainte den bhrath díomhaoin/neamhdhíomhaoin)
|
||||
- Is féidir Chomhéadain a chumrú chun clog a thaispeáint
|
||||
- Is féidir luas díomhaoin a chumrú anois
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Eatraimh: tuairteála nuair a stóráiltear gnóthachan ach ní caillteanas
|
||||
- Agus tú ag taifeadadh: seachain tuairteáil agus fógraí gutha á ndíchumasú
|
||||
@@ -0,0 +1,10 @@
|
||||
v3.23.0: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Cuireadh próifílí Chomhéadain leis
|
||||
- Staitisticí comhiomlánaithe le haghaidh rianta roghnaithe
|
||||
- TrackPoints díomhaoin/neamhdhomhaoin athfhorfheidhmithe de réir mar a stop an t-am bogtha ag obair (tugtha isteach in v3.22.0)
|
||||
|
||||
Ceartúcháin fhabht:
|
||||
- Braiteoirí BLE: sonraí soiléire maidir le dínascadh
|
||||
- Ní mór an t-easpórtáil uathoibríoch a cheadú go fóill
|
||||
@@ -0,0 +1,11 @@
|
||||
v3.25.0: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Tá GPS roghnach anois lena n-áirítear. Rabhadh GPS díchumasaithe
|
||||
- PublicAPI: is féidir le feidhmchláir eile sonraí taifeadta a fháil anois má thosaíonn siad ar thaifeadadh (curtha i bhfeidhm do Gadgetbridge)
|
||||
- Gníomhaíochtaí nua: snámh, snámh oscailte, agus workout
|
||||
- Baineadh feidhmiúlacht pic sciar
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Chomhéadain: luas / airde nuair a léim idir 0.0 agus an luach iarbhír
|
||||
- Is féidir rianta le emojis a onnmhairiú
|
||||
@@ -0,0 +1,5 @@
|
||||
v3.25.1: OpenTracks
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Easpórtáil uathoibríoch: tá súil againn teipeanna ciúine a chosc
|
||||
- Easpórtáil uathoibríoch: cosc tuairteála
|
||||
@@ -0,0 +1,8 @@
|
||||
v3.26.0: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Is féidir fógraí gutha a chumrú
|
||||
- Fógraí gutha faoi ráta croí
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Tuairteála mar gheall ar riocht cine
|
||||
@@ -0,0 +1,4 @@
|
||||
v3.26.1: OpenTracks
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Níor sháraigh barra gníomhaíochta comhthéacsúla an barra uirlisí i dtéama na hoíche.
|
||||
@@ -0,0 +1,13 @@
|
||||
v4.0.1: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Is féidir fógraí gutha a chumrú anois
|
||||
- Folaíonn mód lánscáileáin anois barra nascleanúna Android freisin
|
||||
- Ba cheart go mbeadh nasc le braiteoirí BLE níos tapúla anois
|
||||
- Ceadaigh socruithe a athshocrú agus tú ag taifeadadh
|
||||
- Ceadaigh socruithe iompórtála/easpórtála a athrú agus tú ag taifeadadh
|
||||
- KML/KMZ: ná húsáid deilbhíní le luchtú ó Google
|
||||
|
||||
Ceartúchán Bug:
|
||||
- Oibríonn TrackStoppedActivity ar scáileáin níos lú anois
|
||||
- Iarratas ar cheadanna ar an rianliosta
|
||||
@@ -0,0 +1,10 @@
|
||||
v4. 0. 2: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- - Agus muirmhíle
|
||||
- Is féidir socruithe a athshocrú agus taifeadadh á dhéanamh
|
||||
|
||||
Ceartúcháin:
|
||||
- Fógra gutha slánú
|
||||
- Cairt: bhí ingearchló smoothed weirdly
|
||||
- Ní raibh easpórtáil ag seiceáil an bhfuil an comhad ann
|
||||
@@ -0,0 +1,8 @@
|
||||
v4.0. 3: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
Sonraíocht: Max. luas mar a thuairiscigh braiteoir (GPS nó BLE)
|
||||
|
||||
Ceartúcháin:
|
||||
- Cosc ar thuairteáil mura bhfuil Painéal Na Nionstraimí OSM suiteáilte
|
||||
- Easpórtáil rian GPX: ná heaspórtáil deighleáin an amhráin folamh
|
||||
@@ -0,0 +1,13 @@
|
||||
v4. 0. 4: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Stóráil sonraí braiteoir BLE fiú gan achar (gach 10s)
|
||||
- PUBLIC API: ceadaíonn leagan ainm, catagóir, agus cur síos
|
||||
|
||||
Ceartúcháin:
|
||||
- Tuairteála nuair a ghlacadh pictiúr agus rothlach an fón
|
||||
-
|
||||
|
||||
Forbróir:
|
||||
Sprioc-SDK 33
|
||||
- Baraiméadar úsáideann eatramh de 5s
|
||||
@@ -0,0 +1,7 @@
|
||||
v4. 0. 5: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- - PlayStore release faigh lógó eile
|
||||
|
||||
Ceartúcháin:
|
||||
- Taispeánann liosta eatramh " - " mura bhfuil gnóthachan/caillteanas i láthair
|
||||
@@ -0,0 +1,5 @@
|
||||
v4.0. 6: OpenTracks
|
||||
|
||||
Ceartúcháin:
|
||||
- Egm2008 fhritháireamh mícheart ríomh le haghaidh domhanfhad diúltach
|
||||
- - Crashed API poiblí má Bhí Rianta Oscailte sa chúlra (26 AIBREÁN+)
|
||||
@@ -0,0 +1,10 @@
|
||||
v4. 0. 7: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Gps comhartha caillte teorainn ama: 30s
|
||||
- - Android 13: cead a iarraidh chun fógraí a thaispeáint
|
||||
- Scrios rianta níos tapúla (bunachar sonraí folúis amháin más gá)
|
||||
|
||||
Ceartúcháin:
|
||||
- PublicAPI stop ordú mar thoradh ar tuairteála (a tugadh isteach i v4. 0. 6)
|
||||
- Ceadanna: ceadanna a iarraidh le linn tosaithe
|
||||
@@ -0,0 +1,11 @@
|
||||
v4. 0. 8: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Airde a thaispeántar i gcónaí i m/ft
|
||||
- Taispeáin crios ama an riain mura bhfuil sé éagsúil le crios ama na feiste
|
||||
- PublicAPI: tacaíocht deilbhín an riain a shocrú go sainráite
|
||||
|
||||
Forbróir:
|
||||
- A Tugadh Isteach Cianfhormáideoir
|
||||
- Uasghrádú GO AGP 7.3/desugar Ar Feadh Ré.aicme
|
||||
- Android12+: déan splancscáileán trí Androidx
|
||||
@@ -0,0 +1,8 @@
|
||||
v4. 1. 0: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Easpórtáil leagan KML/KMZ 2. 3 amháin (2. 2)
|
||||
- Le haghaidh crank-bhunaithe powermeters: faigh cadence
|
||||
|
||||
Ceartúcháin:
|
||||
- Workaround do tuairteála ar "iompórtáil gach rud"
|
||||
@@ -0,0 +1,7 @@
|
||||
v4.1. 1: OpenTracks
|
||||
|
||||
Athruithe:
|
||||
- Cuir scáileán réamhrá leis (taispeáin uair amháin)
|
||||
|
||||
Ceartúcháin:
|
||||
- Ná tuairteála mura bhfuil gléas GPS i láthair
|
||||
@@ -0,0 +1,22 @@
|
||||
Cairde rianaithe spóirt a bhfuil meas aige ar do phríobháideachas.
|
||||
|
||||
Tugann gníomhaíochtaí spóirt agus lasmuigh sonas, scil agus muinín.
|
||||
|
||||
Cuir luach ar do shláinte trí súil a choinneáil ar d'oiliúint.
|
||||
Taifeadann tú de réir mar a théann tú ag rith nó ag siúl, agus tugann sé ríomhaire rothar duit le scáileán níos mó le haghaidh rothaíochta.
|
||||
Marcáil láithreacha suimiúla ar do bhealach le pictiúir.
|
||||
Coinnigh staitisticí taifeadta go mion go leor le haghaidh anailíse.
|
||||
Comhroinn ach na sonraí a theastaíonn uait a bheith ag daoine eile.
|
||||
|
||||
* Fógraí gutha.
|
||||
* Tacaíonn braiteoirí Bluetooth LE: ráta croí, luas agus fad (rothaíocht), deireadh (rothaíocht), agus méadar cumhachta (rothaíocht).
|
||||
* Gnóthachan agus caillteanas airde: trí bhraiteoir barometric.
|
||||
* Airde léirithe in EGM2008 (os cionn meánleibhéal na farraige); onnmhairiú mar WGS84.
|
||||
* Easpórtáil sonraí mar rianta mar KMZ (grianghraif san áireamh), KML, nó GPX.
|
||||
* Gan rochtain ar an Idirlíon nó ceadanna breise.
|
||||
* Téama dorcha agus éadrom, ag urramú socruithe an chórais.
|
||||
* Gan fógraí.
|
||||
|
||||
Bogearraí Libre / Bogearraí Saor in Aisce / Foinse Oscailte
|
||||
rud a chiallaíonn gur féidir leat an cód foinse a úsáid, a staidéar, a athrú agus a roinnt.
|
||||
Ceadúnaithe Apache 2.0
|
||||
@@ -0,0 +1 @@
|
||||
Cairde rianaithe spóirt a bhfuil meas aige ar do phríobháideachas.
|
||||
@@ -0,0 +1 @@
|
||||
OpenTracks
|
||||
+2
-1
@@ -1 +1,2 @@
|
||||
android.useAndroidX=true
|
||||
android.useAndroidX=true
|
||||
org.gradle.jvmargs=-Xmx1024m -XX:MaxPermSize=256m
|
||||
|
||||
+7
-10
@@ -18,13 +18,11 @@ import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import androidx.test.filters.LargeTest;
|
||||
import androidx.test.platform.app.InstrumentationRegistry;
|
||||
import androidx.test.rule.GrantPermissionRule;
|
||||
import androidx.test.rule.ServiceTestRule;
|
||||
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
@@ -73,6 +71,9 @@ import de.dennisguse.opentracks.stats.TrackStatistics;
|
||||
|
||||
/**
|
||||
* Export a track to {@link TrackFileFormat} and verify that the import is identical.
|
||||
* <p>
|
||||
* Note: those tests are affected by {@link de.dennisguse.opentracks.sensors.sensorData.SensorData}.isRecent().
|
||||
* If the test device is too slow (like in a CI) these are likely to fail as the sensor data will be omitted from actual.
|
||||
*/
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
public class ExportImportTest {
|
||||
@@ -82,9 +83,6 @@ public class ExportImportTest {
|
||||
@Rule
|
||||
public final ServiceTestRule mServiceRule = ServiceTestRule.withTimeout(5, TimeUnit.SECONDS);
|
||||
|
||||
@Rule
|
||||
public GrantPermissionRule mRuntimePermissionRule = GrantPermissionRule.grant(android.Manifest.permission.ACCESS_FINE_LOCATION);
|
||||
|
||||
//For csv_export_only() as we the timezone is hardcoded in the expectation.
|
||||
@Rule
|
||||
public TimezoneRule timezoneRule = new TimezoneRule(TimeZone.getTimeZone("Europe/Berlin"));
|
||||
@@ -157,12 +155,12 @@ public class ExportImportTest {
|
||||
mockBLESensorData(trackPointCreator, 15f, sensorDistance, 66f, 3f, 50f);
|
||||
|
||||
trackPointCreator.setClock("2020-02-02T02:02:14Z");
|
||||
mockBLESensorData(trackPointCreator, 15f, null, 66f, 3f, 50f);
|
||||
mockBLESensorData(trackPointCreator, 15f, null, 67f, 3f, 50f);
|
||||
trackPointCreator.setClock("2020-02-02T02:02:15Z");
|
||||
mockBLESensorData(trackPointCreator, null, null, 66f, 3f, 50f);
|
||||
mockBLESensorData(trackPointCreator, null, null, 68f, 3f, 50f);
|
||||
|
||||
trackPointCreator.setClock("2020-02-02T02:02:16Z");
|
||||
mockBLESensorData(trackPointCreator, 5f, Distance.of(2), 66f, 3f, 50f); // Distance will be added to next TrackPoint
|
||||
mockBLESensorData(trackPointCreator, 5f, Distance.of(2), 69f, 3f, 50f); // Distance will be added to next TrackPoint
|
||||
|
||||
sendLocation(trackPointCreator, "2020-02-02T02:02:17Z", 3, 14.001, 10, 13, 15, 10, 0);
|
||||
service.insertMarker("Marker 2", "Marker 2 category", "Marker 2 desc", null);
|
||||
@@ -359,7 +357,7 @@ public class ExportImportTest {
|
||||
.setAltitudeLoss(1f)
|
||||
.setAltitudeGain(1f)
|
||||
.setSensorDistance(Distance.of(14))
|
||||
.setHeartRate(66f)
|
||||
.setHeartRate(69)
|
||||
.setPower(50f)
|
||||
.setCadence(3f)
|
||||
.setHorizontalAccuracy(Distance.of(10)),
|
||||
@@ -447,7 +445,6 @@ public class ExportImportTest {
|
||||
assertNull(trackImported);
|
||||
}
|
||||
|
||||
@Ignore(value = "TODO Fails on CI; works on API24 and API30 locally")
|
||||
@LargeTest
|
||||
@Test
|
||||
public void csv_export_only() throws TimeoutException, IOException {
|
||||
|
||||
-5
@@ -29,7 +29,6 @@ import android.os.Looper;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import androidx.test.filters.MediumTest;
|
||||
import androidx.test.rule.GrantPermissionRule;
|
||||
import androidx.test.rule.ServiceTestRule;
|
||||
|
||||
import org.junit.After;
|
||||
@@ -57,9 +56,6 @@ public class TrackRecordingServiceTestMarker {
|
||||
@Rule
|
||||
public final ServiceTestRule mServiceRule = ServiceTestRule.withTimeout(5, TimeUnit.SECONDS);
|
||||
|
||||
@Rule
|
||||
public GrantPermissionRule mRuntimePermissionRule = GrantPermissionRule.grant(android.Manifest.permission.ACCESS_FINE_LOCATION);
|
||||
|
||||
private final Context context = ApplicationProvider.getApplicationContext();
|
||||
private ContentProviderUtils contentProviderUtils;
|
||||
|
||||
@@ -128,7 +124,6 @@ public class TrackRecordingServiceTestMarker {
|
||||
public void recording_GPSfix_createsMarker() {
|
||||
// given
|
||||
TrackPointCreator trackPointCreator = service.getTrackPointCreator();
|
||||
trackPointCreator.stopGPS();
|
||||
|
||||
trackPointCreator.setClock("2020-02-02T02:02:02Z");
|
||||
Track.Id trackId = service.startNewTrack();
|
||||
|
||||
-11
@@ -11,7 +11,6 @@ import androidx.annotation.NonNull;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import androidx.test.filters.MediumTest;
|
||||
import androidx.test.rule.GrantPermissionRule;
|
||||
import androidx.test.rule.ServiceTestRule;
|
||||
|
||||
import org.junit.After;
|
||||
@@ -53,9 +52,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
@Rule
|
||||
public final ServiceTestRule mServiceRule = ServiceTestRule.withTimeout(5, TimeUnit.SECONDS);
|
||||
|
||||
@Rule
|
||||
public GrantPermissionRule mRuntimePermissionRule = GrantPermissionRule.grant(android.Manifest.permission.ACCESS_FINE_LOCATION);
|
||||
|
||||
private final Context context = ApplicationProvider.getApplicationContext();
|
||||
private ContentProviderUtils contentProviderUtils;
|
||||
|
||||
@@ -95,7 +91,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
PreferencesUtils.setString(R.string.idle_speed_key, R.string.idle_speed_default);
|
||||
|
||||
service = startService();
|
||||
service.getTrackPointCreator().stopGPS();
|
||||
}
|
||||
|
||||
@After
|
||||
@@ -117,7 +112,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
String startTime = "2020-02-02T02:02:02Z";
|
||||
trackPointCreator.setClock(startTime);
|
||||
Track.Id trackId = service.startNewTrack();
|
||||
trackPointCreator.stopGPS();
|
||||
trackPointCreator.setAltitudeSumManager(altitudeSumManager);
|
||||
|
||||
// then
|
||||
@@ -155,7 +149,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
|
||||
trackPointCreator.setClock(startTime);
|
||||
Track.Id trackId = service.startNewTrack();
|
||||
trackPointCreator.stopGPS();
|
||||
trackPointCreator.setAltitudeSumManager(altitudeSumManager);
|
||||
|
||||
// when
|
||||
@@ -202,7 +195,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
String starTime = "2020-02-02T02:02:02Z";
|
||||
trackPointCreator.setClock(starTime);
|
||||
Track.Id trackId = service.startNewTrack();
|
||||
trackPointCreator.stopGPS();
|
||||
trackPointCreator.setAltitudeSumManager(altitudeSumManager);
|
||||
|
||||
String pauseTime = "2020-02-02T02:02:03Z";
|
||||
@@ -235,7 +227,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
|
||||
trackPointCreator.setClock(startTime);
|
||||
Track.Id trackId = service.startNewTrack();
|
||||
trackPointCreator.stopGPS();
|
||||
trackPointCreator.setAltitudeSumManager(altitudeSumManager);
|
||||
|
||||
String stopTime = "2020-02-02T02:02:03Z";
|
||||
@@ -246,7 +237,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
String resumeTime = "2020-02-02T02:02:04Z";
|
||||
trackPointCreator.setClock(resumeTime);
|
||||
service.resumeTrack(trackId);
|
||||
trackPointCreator.stopGPS();
|
||||
trackPointCreator.setAltitudeSumManager(altitudeSumManager);
|
||||
|
||||
// then
|
||||
@@ -268,7 +258,6 @@ public class TrackRecordingServiceTestRecording {
|
||||
|
||||
trackPointCreator.setClock(startTime);
|
||||
Track.Id trackId = service.startNewTrack();
|
||||
trackPointCreator.stopGPS();
|
||||
trackPointCreator.setAltitudeSumManager(altitudeSumManager);
|
||||
BluetoothRemoteSensorManager remoteSensorManager = trackPointCreator.getRemoteSensorManager();
|
||||
|
||||
|
||||
+1
-1
@@ -195,7 +195,7 @@ public class TrackRecordingServiceTestStateMachine {
|
||||
|
||||
@MediumTest
|
||||
@Test
|
||||
public void cannotResume_non_existing_track() throws InterruptedException {
|
||||
public void cannotResume_non_existing_track() {
|
||||
// given
|
||||
assertFalse(service.isRecording());
|
||||
assertEquals(TrackRecordingService.STATUS_DEFAULT, service.getRecordingStatusObservable().getValue());
|
||||
|
||||
-4
@@ -8,7 +8,6 @@ import android.os.Looper;
|
||||
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import androidx.test.rule.GrantPermissionRule;
|
||||
import androidx.test.rule.ServiceTestRule;
|
||||
|
||||
import org.junit.AfterClass;
|
||||
@@ -31,9 +30,6 @@ public class VoiceAnnouncementManagerTest {
|
||||
@Rule
|
||||
public final ServiceTestRule mServiceRule = ServiceTestRule.withTimeout(5, TimeUnit.SECONDS);
|
||||
|
||||
@Rule
|
||||
public GrantPermissionRule mRuntimePermissionRule = GrantPermissionRule.grant(android.Manifest.permission.ACCESS_FINE_LOCATION);
|
||||
|
||||
@BeforeClass
|
||||
public static void preSetUp() {
|
||||
// Prepare looper for Android's message queue
|
||||
|
||||
+13
-13
@@ -64,7 +64,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, true, null, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 20.00 kilometers. 1 hour 5 minutes 10 seconds. Average moving speed 18.4 kilometers per hour.", announcement);
|
||||
assertEquals("Total distance 20.0 kilometers. 1 hour 5 minutes 10 seconds. Average moving speed 18.4 kilometers per hour.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -80,7 +80,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, true, null, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 20.00 kilometers. 1 hour 1 second. Average moving speed 20.0 kilometers per hour.", announcement);
|
||||
assertEquals("Total distance 20.0 kilometers. 1 hour 1 second. Average moving speed 20.0 kilometers per hour.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -96,13 +96,13 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, true, null, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 20.00 kilometers. 1 hour. Average moving speed 20.0 kilometers per hour.", announcement);
|
||||
assertEquals("Total distance 20.0 kilometers. 1 hour. Average moving speed 20.0 kilometers per hour.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAnnouncement_metric_distance_rounding_check_two() {
|
||||
TrackStatistics stats = new TrackStatistics();
|
||||
stats.setTotalDistance(Distance.of(19990));
|
||||
stats.setTotalDistance(Distance.of(19900));
|
||||
stats.setTotalTime(Duration.ofHours(1).plusMinutes(5).plusSeconds(10));
|
||||
stats.setMovingTime(Duration.ofHours(1));
|
||||
stats.setMaxSpeed(Speed.of(100));
|
||||
@@ -112,7 +112,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, true, null, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 19.99 kilometers. 1 hour. Average moving speed 20.0 kilometers per hour.", announcement);
|
||||
assertEquals("Total distance 19.9 kilometers. 1 hour. Average moving speed 19.9 kilometers per hour.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -134,7 +134,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, true, lastInterval, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 14.21 kilometers. 16 minutes 39 seconds. Average moving speed 51.2 kilometers per hour. Lap speed 51.2 kilometers per hour.", announcement);
|
||||
assertEquals("Total distance 14.2 kilometers. 16 minutes 39 seconds. Average moving speed 51.2 kilometers per hour. Lap speed 51.2 kilometers per hour.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -150,7 +150,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, false, null, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 20.00 kilometers. 1 hour 5 minutes 10 seconds. Pace 3 minutes 15 seconds per kilometer.", announcement);
|
||||
assertEquals("Total distance 20.0 kilometers. 1 hour 5 minutes 10 seconds. Pace 3 minutes 15 seconds per kilometer.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -172,7 +172,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, false, lastInterval, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 14.21 kilometers. 16 minutes 39 seconds. Pace 1 minute 10 seconds per kilometer. Lap time 1 minute 10 seconds per kilometer.", announcement);
|
||||
assertEquals("Total distance 14.2 kilometers. 16 minutes 39 seconds. Pace 1 minute 10 seconds per kilometer. Lap time 1 minute 10 seconds per kilometer.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -188,7 +188,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.IMPERIAL, true, null, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 12.43 miles. 1 hour 5 minutes 10 seconds. Average moving speed 11.4 miles per hour.", announcement);
|
||||
assertEquals("Total distance 12.4 miles. 1 hour 5 minutes 10 seconds. Average moving speed 11.4 miles per hour.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -210,7 +210,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.IMPERIAL, true, lastInterval, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 8.83 miles. 16 minutes 39 seconds. Average moving speed 31.8 miles per hour. Lap speed 31.8 miles per hour.", announcement);
|
||||
assertEquals("Total distance 8.8 miles. 16 minutes 39 seconds. Average moving speed 31.8 miles per hour. Lap speed 31.8 miles per hour.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -226,7 +226,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.IMPERIAL, false, null, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 12.43 miles. 1 hour 5 minutes 10 seconds. Pace 5 minutes 15 seconds per mile.", announcement);
|
||||
assertEquals("Total distance 12.4 miles. 1 hour 5 minutes 10 seconds. Pace 5 minutes 15 seconds per mile.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -248,7 +248,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.IMPERIAL, false, lastInterval, null).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 8.83 miles. 16 minutes 39 seconds. Pace 1 minute 53 seconds per mile. Lap time 1 minute 53 seconds per mile.", announcement);
|
||||
assertEquals("Total distance 8.8 miles. 16 minutes 39 seconds. Pace 1 minute 53 seconds per mile. Lap time 1 minute 53 seconds per mile.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -274,7 +274,7 @@ public class VoiceAnnouncementUtilsTest {
|
||||
String announcement = VoiceAnnouncementUtils.getAnnouncement(context, stats, UnitSystem.METRIC, true, lastInterval, sensorStatistics).toString();
|
||||
|
||||
// then
|
||||
assertEquals("Total distance 14.21 kilometers. 16 minutes 39 seconds. Average moving speed 51.2 kilometers per hour. Lap speed 51.2 kilometers per hour. Average heart rate 180 bpm. Current heart rate 133 bpm.", announcement);
|
||||
assertEquals("Total distance 14.2 kilometers. 16 minutes 39 seconds. Average moving speed 51.2 kilometers per hour. Lap speed 51.2 kilometers per hour. Average heart rate 180 bpm. Current heart rate 133 bpm.", announcement);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -6,6 +6,7 @@ import static org.mockito.Mockito.verify;
|
||||
|
||||
import android.content.Context;
|
||||
import android.location.Location;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
@@ -49,7 +50,7 @@ public class GPSHandlerTest {
|
||||
Mockito.when(trackPointCreator.createNow())
|
||||
.thenReturn(Instant.now());
|
||||
|
||||
locationHandler.onStart(context);
|
||||
locationHandler.onStart(context, new Handler());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -78,7 +78,7 @@ public class TrackStatisticsUpdaterTest {
|
||||
|
||||
// when
|
||||
TrackStatisticsUpdater subject = new TrackStatisticsUpdater();
|
||||
data.trackPoints.forEach(it -> subject.addTrackPoint(it));
|
||||
data.trackPoints.forEach(subject::addTrackPoint);
|
||||
|
||||
// then
|
||||
TrackStatistics statistics = subject.getTrackStatistics();
|
||||
|
||||
+1
-2
@@ -12,7 +12,6 @@ import static org.hamcrest.Matchers.allOf;
|
||||
import static de.dennisguse.opentracks.util.EspressoUtils.waitFor;
|
||||
|
||||
import android.util.Pair;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.espresso.ViewInteraction;
|
||||
@@ -72,7 +71,7 @@ public class EspressoAggregatedFilterTest {
|
||||
ViewInteraction checkBox = onView(
|
||||
allOf(withId(R.id.filter_dialog_check_button), withText(CATEGORY),
|
||||
withParent(allOf(withId(R.id.filter_items),
|
||||
withParent(IsInstanceOf.<View>instanceOf(android.view.ViewGroup.class)))),
|
||||
withParent(IsInstanceOf.instanceOf(android.view.ViewGroup.class)))),
|
||||
isDisplayed()));
|
||||
checkBox.perform(waitFor(2000));
|
||||
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
#time,trackpoint_type,latitude,longitude,altitude,accuracy_horizontal,accuracy_vertical,speed,altitude_gain,altitude_loss,sensor_distance,heartrate,cadence,power
|
||||
"2020-02-02T03:02:02+01:00","SEGMENT_START_MANUAL",,,,,,,,,,,,
|
||||
"2020-02-02T03:02:03+01:00","TRACKPOINT",3,3,10,10,,54,1,1,,,,
|
||||
"2020-02-02T03:02:03+01:00","TRACKPOINT",3,14,10,10,,54,1,1,,,,
|
||||
"2020-02-02T03:02:04+01:00","SENSORPOINT",,,,,,54,1,1,10,66,3,50
|
||||
"2020-02-02T03:02:05+01:00","TRACKPOINT",3,3,10,10,,18,0,0,2,66,3,50
|
||||
"2020-02-02T03:02:06+01:00","SEGMENT_END_MANUAL",,,,,,,,,,,,
|
||||
"2020-02-02T03:02:20+01:00","SEGMENT_START_MANUAL",,,,,,,,,,,,
|
||||
"2020-02-02T03:02:21+01:00","TRACKPOINT",3,3,10,10,,54,0,0,,,,
|
||||
"2020-02-02T03:02:22+01:00","SEGMENT_START_AUTOMATIC",3,3,10,10,,54,0,0,,,,
|
||||
"2020-02-02T03:02:23+01:00","TRACKPOINT",3,3,10,10,,54,0,0,,,,
|
||||
"2020-02-02T03:02:24+01:00","SEGMENT_END_MANUAL",,,,,,,,,,,,
|
||||
"2020-02-02T03:02:15+01:00","SENSORPOINT",,,,,,,,,,68,3,50
|
||||
"2020-02-02T03:02:16+01:00","SENSORPOINT",,,,,,18,,,2,69,3,50
|
||||
"2020-02-02T03:02:17+01:00","TRACKPOINT",3,14.001,10,10,,18,0,0,2,69,3,50
|
||||
"2020-02-02T03:02:18+01:00","SEGMENT_END_MANUAL",,,,,,,,,,,,
|
||||
"2020-02-02T03:03:20+01:00","SEGMENT_START_MANUAL",,,,,,,,,,,,
|
||||
"2020-02-02T03:03:21+01:00","TRACKPOINT",3,14.002,10,10,,54,0,0,,,,
|
||||
"2020-02-02T03:03:22+01:00","SEGMENT_START_AUTOMATIC",3,16,10,10,,54,0,0,,,,
|
||||
"2020-02-02T03:03:23+01:00","TRACKPOINT",3,16.001,10,10,,54,0,0,,,,
|
||||
"2020-02-02T03:03:24+01:00","SEGMENT_END_MANUAL",,,,,,,,,,,,
|
||||
|
@@ -38,7 +38,6 @@ import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.SearchView;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.core.splashscreen.SplashScreen;
|
||||
import androidx.cursoradapter.widget.ResourceCursorAdapter;
|
||||
import androidx.loader.app.LoaderManager;
|
||||
import androidx.loader.content.CursorLoader;
|
||||
|
||||
@@ -146,9 +146,7 @@ public class TrackRecordingActivity extends AbstractActivity implements ChooseAc
|
||||
finish();
|
||||
return true;
|
||||
});
|
||||
viewBinding.trackRecordingFabAction.setOnClickListener((view) -> {
|
||||
Toast.makeText(TrackRecordingActivity.this, getString(R.string.hold_to_stop), Toast.LENGTH_LONG).show();
|
||||
});
|
||||
viewBinding.trackRecordingFabAction.setOnClickListener((view) -> Toast.makeText(TrackRecordingActivity.this, getString(R.string.hold_to_stop), Toast.LENGTH_LONG).show());
|
||||
|
||||
viewBinding.bottomAppBar.setNavigationIcon(R.drawable.ic_baseline_arrow_back_24);
|
||||
setSupportActionBar(viewBinding.bottomAppBar);
|
||||
|
||||
@@ -27,7 +27,6 @@ import android.database.sqlite.SQLiteDatabase;
|
||||
import android.database.sqlite.SQLiteException;
|
||||
import android.database.sqlite.SQLiteQueryBuilder;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
|
||||
@@ -77,10 +77,8 @@ public class StatisticsRecordingFragment extends Fragment {
|
||||
}
|
||||
};
|
||||
|
||||
private final TrackRecordingServiceConnection.Callback bindChangedCallback = (service, unused) -> {
|
||||
service.getRecordingDataObservable()
|
||||
.observe(StatisticsRecordingFragment.this, this::onRecordingDataChanged);
|
||||
};
|
||||
private final TrackRecordingServiceConnection.Callback bindChangedCallback = (service, unused) -> service.getRecordingDataObservable()
|
||||
.observe(StatisticsRecordingFragment.this, this::onRecordingDataChanged);
|
||||
|
||||
@Override
|
||||
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
|
||||
@@ -62,8 +62,8 @@ public class IntroductionActivity extends AbstractActivity {
|
||||
private static class CustomFragmentPagerAdapter extends FragmentStateAdapter {
|
||||
|
||||
private static final List<FragmentCreator> fragmentCreators = List.of(
|
||||
(FragmentCreator) WelcomeFragment::newInstance,
|
||||
(FragmentCreator) OSMDashboardFragment::newInstance
|
||||
WelcomeFragment::newInstance,
|
||||
OSMDashboardFragment::newInstance
|
||||
);
|
||||
|
||||
public CustomFragmentPagerAdapter(@NonNull FragmentActivity fa) {
|
||||
|
||||
@@ -25,7 +25,6 @@ import de.dennisguse.opentracks.data.models.Marker;
|
||||
import de.dennisguse.opentracks.data.models.Speed;
|
||||
import de.dennisguse.opentracks.data.models.Track;
|
||||
import de.dennisguse.opentracks.data.models.TrackPoint;
|
||||
import de.dennisguse.opentracks.settings.PreferencesUtils;
|
||||
import de.dennisguse.opentracks.stats.TrackStatistics;
|
||||
import de.dennisguse.opentracks.stats.TrackStatisticsUpdater;
|
||||
import de.dennisguse.opentracks.ui.markers.MarkerUtils;
|
||||
|
||||
@@ -56,7 +56,7 @@ public class BluetoothRemoteSensorManager implements BluetoothConnectionManager.
|
||||
|
||||
private static final String TAG = BluetoothRemoteSensorManager.class.getSimpleName();
|
||||
|
||||
public static final Duration MAX_SENSOR_DATE_SET_AGE_MS = Duration.ofSeconds(5);
|
||||
public static final Duration MAX_SENSOR_DATE_SET_AGE = Duration.ofSeconds(5);
|
||||
|
||||
private final BluetoothAdapter bluetoothAdapter;
|
||||
private final Context context;
|
||||
|
||||
@@ -74,7 +74,7 @@ public abstract class SensorData<T> {
|
||||
*/
|
||||
private boolean isRecent() {
|
||||
return Instant.now()
|
||||
.isBefore(time.plus(BluetoothRemoteSensorManager.MAX_SENSOR_DATE_SET_AGE_MS));
|
||||
.isBefore(time.plus(BluetoothRemoteSensorManager.MAX_SENSOR_DATE_SET_AGE));
|
||||
}
|
||||
|
||||
@NonNull
|
||||
|
||||
@@ -22,7 +22,6 @@ import java.util.concurrent.Executors;
|
||||
import de.dennisguse.opentracks.R;
|
||||
import de.dennisguse.opentracks.data.ContentProviderUtils;
|
||||
import de.dennisguse.opentracks.data.models.Track;
|
||||
import de.dennisguse.opentracks.settings.PreferencesUtils;
|
||||
|
||||
public class TrackDeleteService extends Service {
|
||||
|
||||
|
||||
@@ -267,10 +267,11 @@ public class TrackRecordingService extends Service implements TrackPointCreator.
|
||||
|
||||
@Override
|
||||
public void newGpsStatus(GpsStatusValue gpsStatusValue) {
|
||||
notificationManager.updateContent(getString(gpsStatusValue.message));
|
||||
|
||||
//TODO This check should not be necessary, but prevents a crash; somehow the shutdown is not working correctly as we should not receive a notification then.
|
||||
// It is likely a race condition as the LocationManager provides location updates without using the Handler.
|
||||
if (gpsStatusObservable != null) {
|
||||
notificationManager.updateContent(getString(gpsStatusValue.message));
|
||||
gpsStatusObservable.postValue(gpsStatusValue);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -74,7 +74,7 @@ class VoiceAnnouncementUtils {
|
||||
builder.append(context.getString(R.string.total_distance));
|
||||
// Units should always be english singular for TTS.
|
||||
// See https://developer.android.com/reference/android/text/style/TtsSpan?hl=en#TYPE_MEASURE
|
||||
appendDecimalUnit(builder, context.getResources().getQuantityString(distanceId, getQuantityCount(distanceInUnit), distanceInUnit), distanceInUnit, 2, unitDistanceTTS);
|
||||
appendDecimalUnit(builder, context.getResources().getQuantityString(distanceId, getQuantityCount(distanceInUnit), distanceInUnit), distanceInUnit, 1, unitDistanceTTS);
|
||||
// Punctuation helps introduce natural pauses in TTS
|
||||
builder.append(".");
|
||||
}
|
||||
|
||||
@@ -3,14 +3,16 @@ package de.dennisguse.opentracks.services.handlers;
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.location.Location;
|
||||
import android.location.LocationListener;
|
||||
import android.location.LocationManager;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.core.location.LocationListenerCompat;
|
||||
import androidx.core.location.LocationManagerCompat;
|
||||
import androidx.core.location.LocationRequestCompat;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
@@ -23,12 +25,16 @@ import de.dennisguse.opentracks.util.LocationUtils;
|
||||
import de.dennisguse.opentracks.util.PermissionRequester;
|
||||
|
||||
@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE)
|
||||
public class GPSHandler implements LocationListener, GpsStatus.GpsStatusListener, SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
public class GPSHandler implements LocationListenerCompat, GpsStatus.GpsStatusListener, SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
|
||||
private final String TAG = GPSHandler.class.getSimpleName();
|
||||
|
||||
public static final String LOCATION_PROVIDER = LocationManager.GPS_PROVIDER;
|
||||
|
||||
private final TrackPointCreator trackPointCreator;
|
||||
private Context context;
|
||||
private Handler handler;
|
||||
|
||||
private LocationManager locationManager;
|
||||
private GpsStatus gpsStatus;
|
||||
private Duration gpsInterval;
|
||||
@@ -38,8 +44,10 @@ public class GPSHandler implements LocationListener, GpsStatus.GpsStatusListener
|
||||
this.trackPointCreator = trackPointCreator;
|
||||
}
|
||||
|
||||
public void onStart(@NonNull Context context) {
|
||||
public void onStart(@NonNull Context context, @NonNull Handler handler) {
|
||||
this.context = context;
|
||||
this.handler = handler;
|
||||
|
||||
PreferencesUtils.registerOnSharedPreferenceChangeListener(this);
|
||||
gpsStatus = new GpsStatus(context, this);
|
||||
locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
|
||||
@@ -56,10 +64,11 @@ public class GPSHandler implements LocationListener, GpsStatus.GpsStatusListener
|
||||
public void onStop() {
|
||||
if (locationManager != null && context != null) {
|
||||
if (PermissionRequester.GPS.hasPermission(context)) {
|
||||
locationManager.removeUpdates(this);
|
||||
LocationManagerCompat.removeUpdates(locationManager, this);
|
||||
}
|
||||
locationManager = null;
|
||||
context = null;
|
||||
handler = null;
|
||||
}
|
||||
|
||||
if (gpsStatus != null) {
|
||||
@@ -154,14 +163,20 @@ public class GPSHandler implements LocationListener, GpsStatus.GpsStatusListener
|
||||
return;
|
||||
}
|
||||
|
||||
if(!LocationManagerCompat.hasProvider(locationManager, LocationManager.GPS_PROVIDER)) {
|
||||
if (!LocationManagerCompat.hasProvider(locationManager, LOCATION_PROVIDER)) {
|
||||
Log.e(TAG, "Device doesn't have GPS.");
|
||||
return;
|
||||
}
|
||||
|
||||
LocationRequestCompat locationRequest = new LocationRequestCompat.Builder(gpsInterval.toMillis())
|
||||
.setQuality(LocationRequestCompat.QUALITY_HIGH_ACCURACY)
|
||||
.setMaxUpdateDelayMillis(0)
|
||||
.build();
|
||||
|
||||
if (PermissionRequester.GPS.hasPermission(context)) {
|
||||
try {
|
||||
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, gpsInterval.toMillis(), 0, this);
|
||||
final Handler HANDLER = handler;
|
||||
LocationManagerCompat.requestLocationUpdates(locationManager, LOCATION_PROVIDER, locationRequest, HANDLER::post, this);
|
||||
} catch (SecurityException e) {
|
||||
Log.e(TAG, "Could not register location listener; permissions not granted.", e);
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ public class TrackPointCreator implements BluetoothRemoteSensorManager.SensorDat
|
||||
public synchronized void start(@NonNull Context context, @NonNull Handler handler) {
|
||||
this.context = context;
|
||||
|
||||
gpsHandler.onStart(context);
|
||||
gpsHandler.onStart(context, handler);
|
||||
|
||||
remoteSensorManager = new BluetoothRemoteSensorManager(context, handler, this);
|
||||
altitudeSumManager = new AltitudeSumManager();
|
||||
@@ -66,13 +66,6 @@ public class TrackPointCreator implements BluetoothRemoteSensorManager.SensorDat
|
||||
return context != null;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
//There should be a cooler way to do this; we want to send fake locations without getting affected by real GPS data.
|
||||
@VisibleForTesting
|
||||
public void stopGPS() {
|
||||
gpsHandler.onStop();
|
||||
}
|
||||
|
||||
public synchronized void reset() {
|
||||
if (remoteSensorManager == null || altitudeSumManager == null) {
|
||||
Log.d(TAG, "No recording running and no reset necessary.");
|
||||
|
||||
@@ -73,9 +73,7 @@ public class ImportExportSettingsFragment extends PreferenceFragmentCompat {
|
||||
|
||||
private void setFilenameTemplate() {
|
||||
EditTextPreference preference = findPreference(getString(R.string.export_filename_format_key));
|
||||
preference.setOnBindEditTextListener(t -> {
|
||||
t.setHint(getString(R.string.export_filename_format_default));
|
||||
});
|
||||
preference.setOnBindEditTextListener(t -> t.setHint(getString(R.string.export_filename_format_default)));
|
||||
preference.setDialogMessage(TrackFilenameGenerator.getAllOptions());
|
||||
|
||||
preference.setOnPreferenceChangeListener((p, newValue) -> new TrackFilenameGenerator(newValue.toString()).isValid());
|
||||
|
||||
@@ -131,7 +131,7 @@ public class IntervalStatisticsModel extends AndroidViewModel {
|
||||
OPTION_20(20),
|
||||
OPTION_50(50);
|
||||
|
||||
static IntervalOption DEFAULT = OPTION_1;
|
||||
static final IntervalOption DEFAULT = OPTION_1;
|
||||
|
||||
private final double multiplier;
|
||||
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
<vector android:height="24dp" android:tint="#000000"
|
||||
android:viewportHeight="24" android:viewportWidth="24"
|
||||
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="@android:color/white" android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
|
||||
</vector>
|
||||
@@ -89,13 +89,14 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
style="?attr/textAppearanceHeadline6"
|
||||
android:layout_marginTop="20dp"
|
||||
android:text="@string/help_data_google_play_services_title" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
style="?attr/textAppearanceBody1"
|
||||
android:text="@android:string/no" />
|
||||
android:text="@string/help_data_google_play_services_content" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
|
||||
@@ -511,11 +511,11 @@
|
||||
<string name="total_distance">Distancia total</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 kilómetro</item>
|
||||
<item quantity="other">%1$.2f kilómetros</item>
|
||||
<item quantity="other">%1$.1f kilómetros</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 milla</item>
|
||||
<item quantity="other">%1$.2f millas</item>
|
||||
<item quantity="other">%1$.1f millas</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Ritmo cardíaco promedio</string>
|
||||
<string name="current_heart_rate">Ritmo cardíaco actual</string>
|
||||
|
||||
@@ -550,11 +550,6 @@ limitations under the License.
|
||||
<string name="lap_speed">Rychlost kola</string>
|
||||
<string name="speed">Rychlost</string>
|
||||
<string name="total_distance">Celková vzdálenost</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one"/>
|
||||
<item quantity="few"/>
|
||||
<item quantity="other"/>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Průměrný srdeční tep</string>
|
||||
<string name="current_heart_rate">Aktuální srdeční tep</string>
|
||||
<string name="settings_public_api_enabled_summary_on">Ostatní nainstalované aplikace mohou nahrávání spustit nebo zastavit.</string>
|
||||
|
||||
@@ -450,7 +450,7 @@ Meldet das GPS-Gerät ungenaue Daten (z.B. Standort, Geschwindigkeit, Höhe), ka
|
||||
<string name="gps_fixed_and_ready">GPS-Position bestimmt und bereit</string>
|
||||
<string name="instant_export_enabled_title">Sofortiger Export im Anschluss an die Übung</string>
|
||||
<string name="instant_export_enabled_summary">Streckenaufzeichnung nach Beendigung der Aufnahme in den Speicher exportieren</string>
|
||||
<string name="generic_open_track">Offene Strecke</string>
|
||||
<string name="generic_open_track">Strecke öffnen</string>
|
||||
<string name="sensor_state_power_avg">Durchschnittliche Leistung</string>
|
||||
<string name="sensor_state_cadence_avg">Durchschnittliche Trittfrequenz</string>
|
||||
<string name="sensor_state_cadence_max">Maximale Trittfrequenz</string>
|
||||
@@ -540,7 +540,7 @@ Meldet das GPS-Gerät ungenaue Daten (z.B. Standort, Geschwindigkeit, Höhe), ka
|
||||
<string name="stats_sensors_cadence">Trittfrequenz</string>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 Meile</item>
|
||||
<item quantity="other">%1$.2f Meilen</item>
|
||||
<item quantity="other">%1$.1f Meilen</item>
|
||||
</plurals>
|
||||
<string name="field_set_primary">Primär</string>
|
||||
<string name="voice_per_mile">pro Meile</string>
|
||||
@@ -552,7 +552,7 @@ Meldet das GPS-Gerät ungenaue Daten (z.B. Standort, Geschwindigkeit, Höhe), ka
|
||||
<string name="total_distance">Gesamtstrecke</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 Kilometer</item>
|
||||
<item quantity="other">%1$.2f Kilometer</item>
|
||||
<item quantity="other">%1$.1f Kilometer</item>
|
||||
</plurals>
|
||||
<string name="no_compatible_file_manager_installed">Kein kompatibler Dateimanager installiert</string>
|
||||
<string name="aggregated_stats_filter_no_results">Es gibt keine Aktivitäten für diesen Filter</string>
|
||||
|
||||
@@ -562,11 +562,11 @@ limitations under the License.
|
||||
<string name="total_distance">Distancia total</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 kilómetro</item>
|
||||
<item quantity="other">%1$.2f kilómetros</item>
|
||||
<item quantity="other">%1$.1f kilómetros</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 milla</item>
|
||||
<item quantity="other">%1$.2f millas</item>
|
||||
<item quantity="other">%1$.1f millas</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Ritmo cardíaco promedio</string>
|
||||
<string name="current_heart_rate">Ritmo cardíaco actual</string>
|
||||
|
||||
@@ -67,9 +67,9 @@
|
||||
<string name="activity_type_water_skiing">ski nautique</string>
|
||||
<string name="activity_type_wind_surfing">planche à voile</string>
|
||||
<string name="description_activity_type">Type d\'activité : %1$s</string>
|
||||
<string name="description_average_moving_pace_in_minute">Allure moyenne : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_moving_speed">Vitesse moyenne de déplacement : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_average_pace_in_minute">Vitesse moyenne : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_moving_pace_in_minute">Allure moyenne en déplacement : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_moving_speed">Vitesse moyenne en déplacement : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_average_pace_in_minute">Allure moyenne : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_speed">Vitesse moyenne : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_altitude_gain">Dénivelé : %1$d m (%2$d pi)</string>
|
||||
<string name="description_altitude_imperial">Altitude (pi)</string>
|
||||
@@ -78,7 +78,7 @@
|
||||
<string name="description_max_altitude">Élévation max. : %1$d m (%2$d pi)</string>
|
||||
<string name="description_max_speed">Vitesse max. : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_min_altitude">Élévation min. : %1$d m (%2$d pi)</string>
|
||||
<string name="description_moving_time">Durée du déplacement : %1$s</string>
|
||||
<string name="description_moving_time">Durée en déplacement : %1$s</string>
|
||||
<string name="description_pace_imperial">Vitesse (min/mi)</string>
|
||||
<string name="description_pace_metric">Vitesse (min/km)</string>
|
||||
<string name="description_recorded_time">Date d\'enregistrement : %1$s</string>
|
||||
@@ -99,7 +99,7 @@
|
||||
<string name="generic_name_line">Nom : %1$s</string>
|
||||
<string name="generic_recording">Enregistrement…</string>
|
||||
<string name="generic_save">Enregistrer</string>
|
||||
<string name="generic_tracks">Parcours</string>
|
||||
<string name="generic_tracks">Tracés</string>
|
||||
<string name="gps_starting">Lancement du GPS en cours…</string>
|
||||
<string name="gps_wait_for_better_signal">En attente d\'un signal GPS de meilleure qualité…</string>
|
||||
<string name="gps_wait_for_signal">En attente du signal GPS…</string>
|
||||
@@ -109,7 +109,7 @@
|
||||
<string name="image_photo_marker">Repère de photo</string>
|
||||
<string name="image_record">Enregistrer</string>
|
||||
<string name="image_stop">Arrêter</string>
|
||||
<string name="image_track">Parcours</string>
|
||||
<string name="image_track">Tracé</string>
|
||||
<string name="import_progress_message">Importation depuis le répertoire %1$s en cours…</string>
|
||||
<string name="marker_add_error">Impossible d\'insérer un repère. Pas de signal GPS. Veuillez réessayer.</string>
|
||||
<string name="marker_add_success">Un repère a bien été inséré.</string>
|
||||
@@ -144,7 +144,7 @@
|
||||
<string name="settings_advanced">Avancé</string>
|
||||
<string name="settings_chart_by_distance">En fonction de la distance</string>
|
||||
<string name="settings_chart_by_time">En fonction de la durée</string>
|
||||
<string name="settings_recording_default_activity_title">Type activité par déf.</string>
|
||||
<string name="settings_recording_default_activity_title">Type d\'activité par défaut</string>
|
||||
<string name="settings_recording_location_frequency_summary">%1$s entre chaque enregistrement de la position.</string>
|
||||
<string name="settings_recording_max_recording_distance_summary">Une nouvelle section est créée si la distance entre deux positions est supérieure à %1$s.</string>
|
||||
<string name="settings_recording_max_recording_distance_title">Distance max</string>
|
||||
@@ -155,7 +155,7 @@
|
||||
<string name="settings_recording_track_name_date_iso_8601_option">Date (format ISO 8601)</string>
|
||||
<string name="settings_recording_track_name_date_local_option">Date (format local)</string>
|
||||
<string name="settings_recording_track_name_number_option">Numéro</string>
|
||||
<string name="settings_recording_track_name_title">Nom parcours par défaut</string>
|
||||
<string name="settings_recording_track_name_title">Nom du tracé par défaut</string>
|
||||
<string name="settings_reset_confirm_message">Les valeurs par défaut seront rétablies pour tous les paramètres.</string>
|
||||
<string name="settings_reset_confirm_title">Réinitialiser maintenant ?</string>
|
||||
<string name="settings_reset_done">Les valeurs par défaut de tous les paramètres ont bien été rétablies.</string>
|
||||
@@ -164,28 +164,30 @@
|
||||
<string name="settings_stats_units_imperial">Unités impériales (mi, pi)</string>
|
||||
<string name="settings_stats_units_metric">Unités métriques (km, m)</string>
|
||||
<string name="settings_stats_units_title">Unités souhaitées</string>
|
||||
<string name="share_track_share_file_body">Je pense que ce parcours peut t\'intéresser.\n\nPour l\'afficher, utilise Google Earth ou un autre logiciel de cartographie.\n\n%1$s</string>
|
||||
<string name="share_track_subject">J\'aimerais partager un parcours avec toi</string>
|
||||
<string name="stats_average_moving_pace">Allure moyenne de déplacement</string>
|
||||
<string name="stats_average_moving_speed">Vitesse moyenne de déplacement</string>
|
||||
<string name="share_track_share_file_body">Je pense que ce tracé peut t\'intéresser.
|
||||
\n
|
||||
\n%1$s</string>
|
||||
<string name="share_track_subject">J\'aimerais partager un tracé avec toi</string>
|
||||
<string name="stats_average_moving_pace">Allure moyenne en déplacement</string>
|
||||
<string name="stats_average_moving_speed">Vitesse moyenne en déplacement</string>
|
||||
<string name="stats_average_pace">Allure moyenne</string>
|
||||
<string name="stats_average_speed">Vitesse moyenne</string>
|
||||
<string name="stats_altitude">Altitude</string>
|
||||
<string name="stats_fastest_pace">Allure la plus rapide</string>
|
||||
<string name="stats_gain">Gain</string>
|
||||
<string name="stats_gain">Dénivelé positif</string>
|
||||
<string name="stats_latitude">Latitude</string>
|
||||
<string name="stats_longitude">Longitude</string>
|
||||
<string name="stats_max_speed">Vitesse max.</string>
|
||||
<string name="stats_moving_time">Durée de déplacement</string>
|
||||
<string name="stats_moving_time">Durée en déplacement</string>
|
||||
<string name="stats_pace">Allure</string>
|
||||
<string name="stats_speed">Vitesse</string>
|
||||
<string name="stats_distance">Distance</string>
|
||||
<string name="stats_total_time">Durée totale</string>
|
||||
<string name="track_name_format">Parcours %1$d</string>
|
||||
<string name="track_name_format">Tracé %1$d</string>
|
||||
<string name="track_markers">Repères pour le parcours %1$s</string>
|
||||
<string name="track_delete_one_confirm_message">Ce parcours et ses repères vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_one_confirm_title">Supprimer le parcours ?</string>
|
||||
<string name="track_delete_multiple_confirm_message">Les parcours sélectionnés et leurs repères respectifs vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_one_confirm_message">Ce tracé et ses repères vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_one_confirm_title">Supprimer le tracé \?</string>
|
||||
<string name="track_delete_multiple_confirm_message">Les tracés sélectionnés et leurs repères respectifs vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_progress_message">Suppression en cours…</string>
|
||||
<string name="track_detail_stats_tab">Statistiques</string>
|
||||
<string name="track_edit_activity_type">Type d\'activité (exemple : randonnée)</string>
|
||||
@@ -282,4 +284,4 @@
|
||||
<string name="waypoint_type_waterfall">cascade</string>
|
||||
<string name="waypoint_type_water_fountain">fontaine</string>
|
||||
<string name="waypoint_type_waypoint">point de cheminement</string>
|
||||
</resources>
|
||||
</resources>
|
||||
@@ -22,22 +22,22 @@ limitations under the License.
|
||||
<string name="about_history">OpenTracks est une bifurcation de <a href="https://code.google.com/archive/p/mytracks/"><i>Google\'s MyTracks</i></a> (abandonné en 2016).</string>
|
||||
<string name="about_libraries">Bibliothèques</string>
|
||||
<!-- Help -->
|
||||
<string name="help_feature_title">OpenTracks présente les caractéristiques suivantes :</string>
|
||||
<string name="help_feature_content">* créer des traces GPS
|
||||
\n * utilisation d\'un capteur de fréquence cardiaque (Bluetooth LE uniquement)
|
||||
\n * annonces vocales (par temps ou distance)
|
||||
\n * créer des marqueurs (y compris des images)
|
||||
\n * fonctionne complètement hors ligne
|
||||
\n * montrer les traces sur une carte (voir ci-dessous)</string>
|
||||
<string name="help_track_map_title">Comment faire apparaître une trace sur une carte ?</string>
|
||||
<string name="help_track_map_content"> Utilisez la petite icône de carte.
|
||||
\n a) (mises à jour en direct) Installez <a href="https://github.com/OpenTracksApp/OSMDashboard">OSMDashboard</a>. Il fournit des cartes en ligne ou hors ligne via <a href="https://www.openstreetmap.org ">OpenStreetMap</a>.
|
||||
\n En fait, OSMDashboard est une application séparée qui ne peut accéder (temporairement) qu aux données des trace(s) qui vont être affichées.
|
||||
\n b) Via une application cartographique normale (par exemple) , <a href="http://osmand.net/">OsmAnd</a> et <a href="https://maps.me/">MAPS.ME</a> Ces applications doivent prendre en charge le format de fichier KMZ (uniquement les lieux et les horodatages). En fait, une application doit prendre en charge <i>ACTION_VIEW</i> avec MIME <i>application/vnd.google-earth.kmz</i>. </string>
|
||||
<string name="help_storage_pictures_title">Comment OpenTracks stocke-t-il les photos qui ont été prises comme marqueurs ?</string>
|
||||
<string name="help_storage_pictures_content">Elles sont stockées dans le stockage interne de lapplication (c est-à-dire uniquement accessible dans OpenTracks).</string>
|
||||
<string name="help_track_export_title">Comment puis-je exporter/partager des traces enregistrées \?</string>
|
||||
<string name="help_track_export_content"> Les traces peuvent être exportées à partir des paramètres en tant que KMZ, KML ou GPX. KMZ/KML toutes les données ; GPX seulement les emplacements. Les traces partagées via l\'icône <i>partager</i> sont partagées au format KMZ. </string>
|
||||
<string name="help_feature_title">OpenTracks possède les fonctionnalité suivantes :</string>
|
||||
<string name="help_feature_content">* Créer des tracés par GPS
|
||||
\n* Utilisation d\'un capteur de fréquence cardiaque (Bluetooth LE uniquement)
|
||||
\n* Annonces vocales (par temps ou par distance)
|
||||
\n* Créer des repères (avec image)
|
||||
\n* Fonctionne complètement hors ligne
|
||||
\n* Affichage des traces sur une carte (voir ci-dessous)</string>
|
||||
<string name="help_track_map_title">Comment afficher un tracé sur une carte \?</string>
|
||||
<string name="help_track_map_content"> Utilisez la petite icône en forme de carte.
|
||||
\na) (Actualisation en direct) Installez <a href="https://github.com/OpenTracksApp/OSMDashboard">OSMDashboard</a>. Il fournit des cartes en ligne ou hors ligne grâce à <a href="https://www.openstreetmap.org ">OpenStreetMap</a>.
|
||||
\nOSMDashboard est en réalité une application séparée qui n\'accéder (temporairement) qu\'aux données des tracés qui vont être affichées.
|
||||
\nb) Via une application cartographique standard (p. ex. <a href="http://osmand.net/">OsmAnd</a> ou <a href="https://maps.me/">MAPS.ME</a> ). L’application doit prendre en charge le format de fichier KMZ (uniquement les lieux et les horodatages). Plus précisément, l\'application doit prendre en charge <i>ACTION_VIEW</i> avec le type MIME <i>application/vnd.google-earth.kmz</i>. </string>
|
||||
<string name="help_storage_pictures_title">Comment OpenTracks stocke-t-il les photos qui ont été prises en tant que repère \?</string>
|
||||
<string name="help_storage_pictures_content">Elles sont enregistrées dans le stockage interne de l\'application (c\'est-à-dire uniquement accessible dans OpenTracks).</string>
|
||||
<string name="help_track_export_title">Comment puis-je exporter/partager des tracés enregistrées \?</string>
|
||||
<string name="help_track_export_content"> Les tracés peuvent être exportés depuis le menu des paramètres au format KMZ, KML ou GPX. KMZ/KML pour toutes les données ; GPX pour seulement les emplacements. Les tracés partagés via l\'icône <i>partager</i> le sont au format KMZ. </string>
|
||||
<string name="help_data_google_play_services_title">OpenTracks nécessite-t-il/utilise-t-il le service Google Play ?</string>
|
||||
<string name="help_recording_title">Comment OpenTracks enregistre-t-il les données ?</string>
|
||||
<string name="help_recording_content">
|
||||
@@ -131,9 +131,9 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="activity_type_wind_surfing">planche à voile</string>
|
||||
<!-- Description -->
|
||||
<string name="description_activity_type">Type d\'activité : %1$s</string>
|
||||
<string name="description_average_moving_pace_in_minute">Allure moyenne : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_moving_speed">Vitesse moyenne de déplacement : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_average_pace_in_minute">Vitesse moyenne : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_moving_pace_in_minute">Allure moyenne en déplacement : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_moving_speed">Vitesse moyenne en déplacement : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_average_pace_in_minute">Allure moyenne : %1$s min/km (%2$s min/mi)</string>
|
||||
<string name="description_average_speed">Vitesse moyenne : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_altitude_gain">Dénivelé positif : %1$d m (%2$d pi)</string>
|
||||
<string name="description_altitude_imperial">Altitude (pi)</string>
|
||||
@@ -142,7 +142,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="description_max_altitude">Élévation max. : %1$d m (%2$d pi)</string>
|
||||
<string name="description_max_speed">Vitesse max. : %1$.2f km/h (%2$.1f mi/h)</string>
|
||||
<string name="description_min_altitude">Élévation min. : %1$d m (%2$d pi)</string>
|
||||
<string name="description_moving_time">Durée du déplacement : %1$s</string>
|
||||
<string name="description_moving_time">Durée en déplacement : %1$s</string>
|
||||
<string name="description_pace_imperial">Vitesse (min/mi)</string>
|
||||
<string name="description_pace_metric">Vitesse (min/km)</string>
|
||||
<string name="description_recorded_time">Date d\'enregistrement : %1$s</string>
|
||||
@@ -170,7 +170,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="generic_name_line">Nom : %1$s</string>
|
||||
<string name="generic_recording">Enregistrement…</string>
|
||||
<string name="generic_save">Enregistrer</string>
|
||||
<string name="generic_tracks">Parcours</string>
|
||||
<string name="generic_tracks">Tracés</string>
|
||||
<!-- Gps -->
|
||||
<string name="gps_starting">Lancement du GPS en cours</string>
|
||||
<string name="gps_wait_for_better_signal">En attente d\'un signal GPS de meilleure qualité</string>
|
||||
@@ -182,7 +182,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="image_photo_marker">Repère de photo</string>
|
||||
<string name="image_record">Enregistrer</string>
|
||||
<string name="image_stop">Arrêter</string>
|
||||
<string name="image_track">Parcours</string>
|
||||
<string name="image_track">Tracé</string>
|
||||
<!-- Import -->
|
||||
<string name="import_progress_message">Importation depuis le répertoire %1$s en cours…</string>
|
||||
<!-- Marker -->
|
||||
@@ -218,7 +218,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="menu_show_on_map">Afficher sur la carte</string>
|
||||
<string name="menu_start_gps">Démarrer le GPS</string>
|
||||
<string name="menu_stop_gps">Arrêter le GPS</string>
|
||||
<string name="menu_resume_track">Reprendre la trace</string>
|
||||
<string name="menu_resume_track">Reprendre le tracé</string>
|
||||
<!-- OpenTracks -->
|
||||
<string name="recording_service">Service enregistrement</string>
|
||||
<!-- Permission -->
|
||||
@@ -240,7 +240,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_recording_show_on_lockscreen_while_recording_summary">Pendant l\'enregistrement, afficher les statistiques sans déverrouiller l\'appareil.</string>
|
||||
<string name="settings_recording_keep_screen_on_while_recording_title">Garder l\'écran allumé</string>
|
||||
<string name="settings_recording_keep_screen_on_while_recording_summary">Pendant l\'enregistrement, garder l\'écran allumé.</string>
|
||||
<string name="settings_recording_default_activity_title">Type activité par déf</string>
|
||||
<string name="settings_recording_default_activity_title">Type d\'activité par défaut</string>
|
||||
<string name="settings_recording_location_frequency_summary">%1$s entre chaque enregistrement de la position</string>
|
||||
<string name="settings_recording_max_recording_distance_summary">Une nouvelle section est créée si la distance entre deux positions est supérieure à %1$s</string>
|
||||
<string name="settings_recording_max_recording_distance_title">Distance max</string>
|
||||
@@ -251,7 +251,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_recording_track_name_date_iso_8601_option">Date (format ISO 8601)</string>
|
||||
<string name="settings_recording_track_name_date_local_option">Date (format local)</string>
|
||||
<string name="settings_recording_track_name_number_option">Numéro</string>
|
||||
<string name="settings_recording_track_name_title">Nom parcours par défaut</string>
|
||||
<string name="settings_recording_track_name_title">Nom du tracé par défaut</string>
|
||||
<!-- Settings Reset -->
|
||||
<string name="settings_reset_confirm_message">Les valeurs par défaut seront rétablies pour tous les paramètres.</string>
|
||||
<string name="settings_reset_confirm_title">Réinitialiser maintenant ?</string>
|
||||
@@ -264,13 +264,13 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_stats_units_metric">Unités métriques (km, m)</string>
|
||||
<string name="settings_stats_units_title">Unités souhaitées</string>
|
||||
<!-- Share Track -->
|
||||
<string name="share_track_share_file_body">Je pense que ce parcours peut t\'intéresser.
|
||||
<string name="share_track_share_file_body">Je pense que ce tracé peut t\'intéresser.
|
||||
\n
|
||||
\n%1$s</string>
|
||||
<string name="share_track_subject">J\'aimerais partager un parcours avec toi</string>
|
||||
<string name="share_track_subject">J\'aimerais partager un tracé avec toi</string>
|
||||
<!-- Stats -->
|
||||
<string name="stats_average_moving_pace">Allure moyenne de déplacement</string>
|
||||
<string name="stats_average_moving_speed">Vitesse moyenne de déplacement</string>
|
||||
<string name="stats_average_moving_pace">Allure moyenne en déplacement</string>
|
||||
<string name="stats_average_moving_speed">Vitesse moyenne en déplacement</string>
|
||||
<string name="stats_average_pace">Allure moyenne</string>
|
||||
<string name="stats_average_speed">Vitesse moyenne</string>
|
||||
<string name="stats_altitude">Altitude</string>
|
||||
@@ -279,19 +279,19 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="stats_latitude">Latitude</string>
|
||||
<string name="stats_longitude">Longitude</string>
|
||||
<string name="stats_max_speed">Vitesse max</string>
|
||||
<string name="stats_moving_time">Durée de déplacement</string>
|
||||
<string name="stats_moving_time">Durée en déplacement</string>
|
||||
<string name="stats_pace">Allure</string>
|
||||
<string name="stats_speed">Vitesse</string>
|
||||
<string name="stats_distance">Distance</string>
|
||||
<string name="stats_total_time">Durée totale</string>
|
||||
<!-- Track -->
|
||||
<string name="track_name_format">Parcours %1$d</string>
|
||||
<string name="track_name_format">Tracé %1$d</string>
|
||||
<string name="track_recording_notification_accuracy">Précision de la localisation : %1$s</string>
|
||||
<string name="track_markers">Repères pour le parcours %1$s</string>
|
||||
<!-- Track Delete -->
|
||||
<string name="track_delete_one_confirm_message">Ce parcours et ses repères vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_one_confirm_title">Supprimer le parcours ?</string>
|
||||
<string name="track_delete_multiple_confirm_message">Les parcours sélectionnés et leurs repères respectifs vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_one_confirm_message">Ce tracé et ses repères vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_one_confirm_title">Supprimer le tracé \?</string>
|
||||
<string name="track_delete_multiple_confirm_message">Les tracés sélectionnés et leurs repères respectifs vont être définitivement effacés de l\'appareil.</string>
|
||||
<string name="track_delete_progress_message">Suppression en cours…</string>
|
||||
<!-- Track Detail -->
|
||||
<string name="track_detail_stats_tab">Statistiques</string>
|
||||
@@ -327,22 +327,27 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<!-- Voice -->
|
||||
<plurals name="voiceHours">
|
||||
<item quantity="one">%1$d heure</item>
|
||||
<item quantity="many">%1$d heures</item>
|
||||
<item quantity="other">%1$d heures</item>
|
||||
</plurals>
|
||||
<plurals name="voiceMinutes">
|
||||
<item quantity="one">%1$d minute</item>
|
||||
<item quantity="many">%1$d minutes</item>
|
||||
<item quantity="other">%1$d minutes</item>
|
||||
</plurals>
|
||||
<plurals name="voiceSeconds">
|
||||
<item quantity="one">%1$d seconde</item>
|
||||
<item quantity="many">%1$d secondes</item>
|
||||
<item quantity="other">%1$d secondes</item>
|
||||
</plurals>
|
||||
<plurals name="voiceSpeedKilometersPerHour">
|
||||
<item quantity="one">%1$.1f kilomètre-heure</item>
|
||||
<item quantity="many">%1$.1f kilomètres-heure</item>
|
||||
<item quantity="other">%1$.1f kilomètres-heure</item>
|
||||
</plurals>
|
||||
<plurals name="voiceSpeedMilesPerHour">
|
||||
<item quantity="one">%1$.1f mile par heure</item>
|
||||
<item quantity="many">%1$.1f miles par heure</item>
|
||||
<item quantity="other">%1$.1f miles par heure</item>
|
||||
</plurals>
|
||||
<!-- Waypoint Type -->
|
||||
@@ -404,16 +409,16 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="track_speed_notification">Vitesse : %1$s</string>
|
||||
<string name="track_detail_intervals_tab">Intervalles</string>
|
||||
<string name="interval_list_empty_message">Il n\'y a pas encore d\'intervalle</string>
|
||||
<string name="aggregated_stats_empty_message">Enregistrez votre première trace pour voir les statistiques agrégées</string>
|
||||
<string name="settings_default_export_uri_title">Répertoire d\'exportation des traces</string>
|
||||
<string name="aggregated_stats_empty_message">Enregistrez vos premier tracé pour voir les statistiques agrégées</string>
|
||||
<string name="settings_default_export_uri_title">Répertoire d\'exportation des tracés</string>
|
||||
<string name="instant_export_enabled_title">Exportation instantanée après l\'entraînement</string>
|
||||
<string name="stats_loss">Dénivelé négatif</string>
|
||||
<string name="settings_prevent_reimport_tracks_title">Empêcher la réimportation de traces</string>
|
||||
<string name="settings_prevent_reimport_tracks_title">Empêcher la réimportation des tracés</string>
|
||||
<string name="settings_night_mode_option_night">Nuit</string>
|
||||
<string name="settings_night_mode_option_day">Jour</string>
|
||||
<string name="settings_night_mode_option_system">Système</string>
|
||||
<string name="stats_split_interval">Intervalle partagé</string>
|
||||
<string name="instant_export_enabled_summary">Exportation de la trace vers le stockage après la fin de l\'enregistrement</string>
|
||||
<string name="instant_export_enabled_summary">Exportation du tracé dans le stockage à la fin de l\'enregistrement</string>
|
||||
<string name="hold_to_stop">Maintenir pour arrêter</string>
|
||||
<string name="track_distance_notification">Distance : %1$s</string>
|
||||
<string name="open_track_as_KML">Ouvert comme KML</string>
|
||||
@@ -423,7 +428,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_sensor_wheel_circumference">Circonférence de la roue (mm)</string>
|
||||
<string name="export_error_post_workout">L\'exportation du post-travail a échoué, veuillez vérifier le répertoire d\'exportation.</string>
|
||||
<string name="export_all_do_it_for_all">le faire pour tous les conflits</string>
|
||||
<string name="export_track_errors">Traces non exportées</string>
|
||||
<string name="export_track_errors">Tracés non exportés</string>
|
||||
<string name="import_unable_to_import_file">Impossible d\'importer le fichier : %1$s</string>
|
||||
<string name="import_no_kml_file_found">Pas de doc.fichier kml trouvé dans KMZ</string>
|
||||
<string name="import_error_info">%1$s : %2$s</string>
|
||||
@@ -438,8 +443,8 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="sensor_state_heart_rate_avg">Rythme cardiaque moyen</string>
|
||||
<string name="sensor_state_cadence_avg">Cadence moyenne</string>
|
||||
<string name="generic_click_twice_cancel">Cliquez sur retour pour annuler</string>
|
||||
<string name="export_progress_summary_new_msg">Nouvelles traces exportées</string>
|
||||
<string name="export_progress_summary_skip_msg">Traces ignorées</string>
|
||||
<string name="export_progress_summary_new_msg">Nouveaux tracés exportés</string>
|
||||
<string name="export_progress_summary_skip_msg">Tracés ignorés</string>
|
||||
<string name="export_progress_summary_errors_msg">Erreurs</string>
|
||||
<string name="generic_overwrite">Écraser</string>
|
||||
<string name="generic_show_errors">Afficher les erreurs</string>
|
||||
@@ -452,18 +457,19 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="import_unsupported_format">Format de fichier non pris en charge</string>
|
||||
<string name="import_parser_error">Erreur de l\'analyseur : %1$s</string>
|
||||
<string name="import_file_imported">Fichier %1$s importé</string>
|
||||
<string name="import_prevent_reimport">Vous avez défini empêcher la réimportation de la trace</string>
|
||||
<string name="import_prevent_reimport">Vous avez défini l\'empêchement de la réimportation des tracés</string>
|
||||
<string name="import_progress_summary_ok_msg">Les fichiers importés</string>
|
||||
<string name="import_progress_summary_exists_msg">Il existe déjà</string>
|
||||
<string name="import_progress_summary_errors_msg">Erreur</string>
|
||||
<plurals name="generic_completed_with_errors">
|
||||
<item quantity="one">Terminé avec %1$d erreur</item>
|
||||
<item quantity="other">Terminé avec des %1$d erreurs</item>
|
||||
<item quantity="many">Terminé avec %1$d erreurs</item>
|
||||
<item quantity="other">Terminé avec %1$d erreurs</item>
|
||||
</plurals>
|
||||
<string name="settings_default_trackfileformat">Format de fichier d\'exportation / partage</string>
|
||||
<string name="description_altitude_loss">Dénivelé négatif : %1$d m (%2$d ft)</string>
|
||||
<string name="export_track_already_exists_msg">La trace %1$s existe déjà dans le répertoire de destination.</string>
|
||||
<string name="export_progress_summary_overwrite_msg">Traces écrasées</string>
|
||||
<string name="export_track_already_exists_msg">Le tracé %1$s existe déjà dans le répertoire de destination.</string>
|
||||
<string name="export_progress_summary_overwrite_msg">Tracés écrasés</string>
|
||||
<string name="about_third_party_data">Données de tiers</string>
|
||||
<string name="delete_service">Service de suppression</string>
|
||||
<string name="menu_voice_rate">Vitesse vocale</string>
|
||||
@@ -472,7 +478,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_sensor_cycling_cadence">Cadre</string>
|
||||
<string name="settings_sensor_running_speed_and_cadence">Distance, vitesse et cadence</string>
|
||||
<string name="settings_layout_reset">Réinitialiser la disposition personnalisée</string>
|
||||
<string name="settings_layout_reset_confirm_message">Tous les paramètres de disposition reviendront à leur valeur par défaut. Ceci ne supprimera aucun parcours de l\'appareil.</string>
|
||||
<string name="settings_layout_reset_confirm_message">Tous les paramètres de disposition reviendront à leur valeur par défaut. Ceci ne supprimera aucun tracé de l\'appareil.</string>
|
||||
<string name="stats_coordinates">Latitude/Longitude</string>
|
||||
<string name="field_set_secondary">Secondaire</string>
|
||||
<string name="field_remove_from_layout">Retirer</string>
|
||||
@@ -505,7 +511,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_import_section">Importer</string>
|
||||
<string name="settings_export_section">Exporter</string>
|
||||
<string name="settings_reset_summary">Réinitialiser les paramètres aux valeurs par défaut</string>
|
||||
<string name="settings_activity_defaults_category">Défauts de l\'activité</string>
|
||||
<string name="settings_activity_defaults_category">Valeurs par défaut de l\'activité</string>
|
||||
<string name="settings_sensors_summary">Capteurs de cyclisme, Circonférence de roue, Capteurs de course à pied</string>
|
||||
<string name="settings_ui_summary">Apparence, Mise en page de l\'enregistrement, Thème</string>
|
||||
<string name="settings_units_category">Unités</string>
|
||||
@@ -520,7 +526,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_defaults_summary">Unités préférées, Activité par défaut, Suivi du nom par défaut</string>
|
||||
<string name="settings_defaults_title">Unités et activité par défaut</string>
|
||||
<string name="settings_open_tracks_summary">A propos du projet OpenTracks</string>
|
||||
<string name="settings_open_tracks_title">Traces ouvertes</string>
|
||||
<string name="settings_open_tracks_title">Open Tracks</string>
|
||||
<string name="generic_undo">Annuler</string>
|
||||
<string name="menu_add_custom_layout">Nouvelle présentation</string>
|
||||
<string name="generic_filter">Filtre</string>
|
||||
@@ -545,17 +551,19 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="average_heart_rate">Fréquence cardiaque moyenne</string>
|
||||
<string name="current_heart_rate">Fréquence cardiaque actuelle</string>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">%1$.2f mile</item>
|
||||
<item quantity="other">%1$.2f miles</item>
|
||||
<item quantity="one">%1$.1f mile</item>
|
||||
<item quantity="many">%1$.1f miles</item>
|
||||
<item quantity="other">%1$.1f miles</item>
|
||||
</plurals>
|
||||
<string name="lap_time">Temps par tour</string>
|
||||
<string name="speed">Vitesse</string>
|
||||
<string name="speed">Vitesse moyenne</string>
|
||||
<string name="settings_public_api_dashboard_enabled_summary_off">Les données enregistrées ne seront pas automatiquement partagées avec d\'autres applications.</string>
|
||||
<string name="settings_public_api_enabled_summary_on">D\'autres applications installées peuvent démarrer ou arrêter les enregistrements.</string>
|
||||
<string name="settings_public_api_enabled_summary_off">Seul OpenTracks peut démarrer et arrêter les enregistrements.</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">%1$.2f kilomètre</item>
|
||||
<item quantity="other">%1$.2f kilomètres</item>
|
||||
<item quantity="one">%1$.1f kilomètre</item>
|
||||
<item quantity="many">%1$.1f kilomètres</item>
|
||||
<item quantity="other">%1$.1f kilomètres</item>
|
||||
</plurals>
|
||||
<string name="total_distance">Distance totale</string>
|
||||
<string name="activity_type_swimming">natation</string>
|
||||
@@ -585,7 +593,7 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="settings_announcements_average_heart_rate">Moyenne de fréquence cardiaque</string>
|
||||
<string name="settings_announcements_lap_heart_rate">Fréquence cardiaque au tour</string>
|
||||
<string name="image_discard">Ignorer</string>
|
||||
<string name="track_discarding">Ignorer la trace</string>
|
||||
<string name="track_discarding">Ignorer le tracé</string>
|
||||
<string name="description_pace_nautical">Allure (min/MN)</string>
|
||||
<string name="show_on_dashboard_not_installed">Il n\'y a pas d\'application installé supportant l\'API OpenTracks Dashboard.</string>
|
||||
<string name="description_speed_nautical">Vitesse (nœuds)</string>
|
||||
@@ -599,12 +607,16 @@ Si le dispositif GPS signale des données inexactes (par exemple, la localisatio
|
||||
<string name="voice_per_nautical_mile">par mile nautique</string>
|
||||
<plurals name="voiceSpeedMKnots">
|
||||
<item quantity="one">%1$.1f nœud</item>
|
||||
<item quantity="many">%1$.1f nœuds</item>
|
||||
<item quantity="other">%1$.1f nœuds</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="one">%1$.2f mile nautique</item>
|
||||
<item quantity="other">%1$.2f milles nautique</item>
|
||||
<item quantity="one">%1$.1f mille nautique</item>
|
||||
<item quantity="many">%1$.1f milles nautique</item>
|
||||
<item quantity="other">%1$.1f milles nautique</item>
|
||||
</plurals>
|
||||
<string name="settings_public_api_package_title">Nom du paquet pour l\'API Publique</string>
|
||||
<string name="track_delete_number_of_tracks">%1$d parcours</string>
|
||||
<string name="track_delete_number_of_tracks">%1$d tracés</string>
|
||||
<string name="introduction_osm_dashboard">OpenTracks ne fournit pas de carte en tant que telle. Veuillez installer OSMDashboard pour visualiser vos tracés sur une carte.</string>
|
||||
<string name="help_data_google_play_services_content">Non</string>
|
||||
</resources>
|
||||
@@ -0,0 +1,517 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="about_libraries">Leabharlanna</string>
|
||||
<string name="about_preference_title">Maidir Le OpenTracks</string>
|
||||
<string name="about_url">Leathanach Gréasáin an tionscadail: <a href="%1$s">%1$s</a></string>
|
||||
<string name="about_version_name">Ainm an leagain: %1$s</string>
|
||||
<string name="about_version_code">Cód an leagain: %1$d</string>
|
||||
<string name="help_feature_title">Tá na gnéithe seo a leanas ag OpenTracks:</string>
|
||||
<string name="about_history">Is forc é OpenTracks de <a href="https://code.google.com/archive/p/mytracks/"><i>MyTracks Google</i></a> (scortha in 2016).</string>
|
||||
<string name="help_storage_pictures_title">Conas A stórálann OpenTracks pictiúir a tógadh mar mharcóirí\?</string>
|
||||
<string name="help_track_export_title">Conas is féidir liom rianta taifeadta a onnmhairiú/a roinnt\?</string>
|
||||
<string name="help_track_map_title">Conas rian a thaispeáint ar léarscáil\?</string>
|
||||
<string name="help_storage_pictures_content">Stóráiltear iad seo i stóras inmheánach na haipe (i.e., níl rochtain orthu ach amháin laistigh de OpenTracks).</string>
|
||||
<string name="help_data_google_play_services_title">An bhfuil Google Play Service ag teastáil/úsáid OpenTracks\?</string>
|
||||
<string name="help_recording_title">Conas a thaifeadann OpenTracks sonraí\?</string>
|
||||
<string name="help_data_storage_title">Conas a stórálann OpenTracks sonraí braiteora\?</string>
|
||||
<string name="help_recording_content">OpenTracks úsáideann an braiteoir GPS an fheiste chun an suíomh a thaifeadadh go leanúnach. Má thuairiscíonn an gléas GPS sonraí míchruinne (m.sh., suíomh, luas, ingearchló), Ní féidir Le OpenTracks aon rud a dhéanamh faoi.</string>
|
||||
<string name="help_gps_troubleshooting_content"> Cad is féidir leat a dhéanamh:
|
||||
\n a) seiceáil an bhfuil GPS cumasaithe,
|
||||
\n b) feabhas a chur ar fáiltiú GPS (e.g., dul amuigh faoin AER),
|
||||
\n c) seiceáil le <a href="https://f-droid.org/en/packages/com.android.gpstest.osmdroid/">gpstest</a> app, agus
|
||||
\n d) díchumasaigh coigilt cumhachta.
|
||||
\n
|
||||
\n Mura gcabhraíonn gach rud le do thoil tuairiscigh fabht. </string>
|
||||
<string name="open_track_as_GPX">Oscail mar GPX</string>
|
||||
<string name="open_track_as_KML">Oscail mar KML</string>
|
||||
<string name="open_track_as_trackfileformat">Oscail mar %1$s</string>
|
||||
<string name="activity_type_airplane">eitleán</string>
|
||||
<string name="activity_type_biking">rothaíocht</string>
|
||||
<string name="activity_type_blimp">blimpname</string>
|
||||
<string name="activity_type_boat">bád</string>
|
||||
<string name="help_gps_troubleshooting_title">Nach suíomhanna taifeadta é OpenTracks\?</string>
|
||||
<string name="help_support_title">Conas is féidir liom tacú le OpenTracks\?</string>
|
||||
<string name="activity_type_climbing">dreapadóireachta</string>
|
||||
<string name="activity_type_commercial_airplane">eitleán tráchtála</string>
|
||||
<string name="activity_type_cross_country_skiing">sciáil tras-tíre</string>
|
||||
<string name="activity_type_cycling">rothaíocht</string>
|
||||
<string name="activity_type_dirt_bike">dirt rothar</string>
|
||||
<string name="activity_type_donkey_back_riding">asal ar ais marcaíocht</string>
|
||||
<string name="activity_type_driving">tiomáint</string>
|
||||
<string name="activity_type_driving_bus">bus tiomána</string>
|
||||
<string name="activity_type_driving_car">carr tiomána</string>
|
||||
<string name="activity_type_escooter">escootername</string>
|
||||
<string name="activity_type_ferry">farantóireachta</string>
|
||||
<string name="activity_type_frisbee">frisbheach</string>
|
||||
<string name="activity_type_gliding">glidingname</string>
|
||||
<string name="activity_type_hang_gliding">croch gliding</string>
|
||||
<string name="activity_type_motor_boating">bádóireacht mótair</string>
|
||||
<string name="activity_type_mountain_biking">rothaíocht sléibhe</string>
|
||||
<string name="activity_type_off_trail_hiking">hiking cosán</string>
|
||||
<string name="activity_type_other">eile</string>
|
||||
<string name="activity_type_paddling">stuáil</string>
|
||||
<string name="activity_type_para_gliding">paragliding</string>
|
||||
<string name="activity_type_rc_airplane">eitleán RC</string>
|
||||
<string name="activity_type_rc_boat">Bád RC</string>
|
||||
<string name="activity_type_rc_helicopter">Héileacaptar RC</string>
|
||||
<string name="activity_type_riding">marcaíocht</string>
|
||||
<string name="activity_type_roller_skiing">sciáil sorcóir</string>
|
||||
<string name="activity_type_rowing">rámhaíochta</string>
|
||||
<string name="activity_type_hiking">fánaíocht</string>
|
||||
<string name="activity_type_horse_back_riding">ag marcaíocht capall</string>
|
||||
<string name="activity_type_hot_air_balloon">balún aer te</string>
|
||||
<string name="activity_type_ice_sailing">seoltóireacht oighir</string>
|
||||
<string name="activity_type_kayaking">cadhcáil</string>
|
||||
<string name="activity_type_kite_surfing">eitleog surfing</string>
|
||||
<string name="activity_type_land_sailing">seoltóireacht talún</string>
|
||||
<string name="activity_type_mixed_type">cineál measctha</string>
|
||||
<string name="activity_type_motor_bike">gluaisrothar</string>
|
||||
<string name="activity_type_sled">sledname</string>
|
||||
<string name="activity_type_snow_boarding">snowboarding</string>
|
||||
<string name="activity_type_snow_shoeing">ag cur sneachta</string>
|
||||
<string name="activity_type_speed_walking">luas siúil</string>
|
||||
<string name="activity_type_street_running">rith sráide</string>
|
||||
<string name="activity_type_surfing">surfáil</string>
|
||||
<string name="activity_type_track_running">rian ag rith</string>
|
||||
<string name="activity_type_trail_hiking">fánaíocht cosán</string>
|
||||
<string name="activity_type_trail_running">rian ag rith</string>
|
||||
<string name="activity_type_train">traein</string>
|
||||
<string name="activity_type_running">ag rith</string>
|
||||
<string name="activity_type_sailing">seoltóireacht</string>
|
||||
<string name="activity_type_seaplane">eitleán farraige</string>
|
||||
<string name="activity_type_skate_boarding">clárscátáil</string>
|
||||
<string name="activity_type_skating">scátáil</string>
|
||||
<string name="activity_type_skiing">sciáil</string>
|
||||
<string name="activity_type_unknown">anaithnid</string>
|
||||
<string name="activity_type_wakeboarding">clár oibre</string>
|
||||
<string name="activity_type_walking">ag siúl</string>
|
||||
<string name="activity_type_water_skiing">sciáil uisce</string>
|
||||
<string name="activity_type_wind_surfing">Clársheoltóireacht</string>
|
||||
<string name="activity_type_swimming_open">ag snámh in uisce oscailte</string>
|
||||
<string name="description_average_moving_pace_in_minute">Meánluas gluaiseachta: %1$s nóim/km (%2$s nóim/mi)</string>
|
||||
<string name="description_average_moving_speed">Meánluas gluaiseachta: %1$.2f km/u (%2$.1f mi/u)</string>
|
||||
<string name="description_average_speed">Meánluas: %1$.2f km/u (%2$.1f mi/u)</string>
|
||||
<string name="activity_type_swimming">ag snámh</string>
|
||||
<string name="activity_type_workout">oibriú amach</string>
|
||||
<string name="description_activity_type">Cineál gníomhaíochta: %1$s</string>
|
||||
<string name="description_altitude_gain">Gnóthachan airde: %1$d m (%2$d tr)</string>
|
||||
<string name="description_altitude_loss">Caillteanas airde: %1$d m (%2$d tr)</string>
|
||||
<string name="description_altitude_imperial">airde (ft)</string>
|
||||
<string name="description_altitude_metric">airde (m)</string>
|
||||
<string name="description_max_altitude">Uasairde: %1$d m (%2$d tr)</string>
|
||||
<string name="description_max_speed">Luas uasta: %1$.2f km/u (%2$.1f mi/u)</string>
|
||||
<string name="description_min_altitude">Íos-ingearchló: %1$d m (%2$d tr)</string>
|
||||
<string name="description_moving_time">Am bogtha: %1$s</string>
|
||||
<string name="description_pace_imperial">Luas (nóiméad/mi)</string>
|
||||
<string name="description_pace_nautical">Luas (nóiméad/NM)</string>
|
||||
<string name="description_pace_metric">Luas (nóiméad/km)</string>
|
||||
<string name="description_recorded_time">Taifeadta: %1$s</string>
|
||||
<string name="description_speed_ms">Luas (m/s)</string>
|
||||
<string name="description_default_speed_or_pace">De réir cineáil gníomhaíochta</string>
|
||||
<string name="description_speed_imperial">Luas (mi/uair)</string>
|
||||
<string name="description_speed_nautical">Luas (snaidhmeanna)</string>
|
||||
<string name="description_speed_metric">Luas (km/uair)</string>
|
||||
<string name="description_time">Am</string>
|
||||
<string name="description_sensor_heart_rate">Ráta croí (bpm)</string>
|
||||
<string name="description_sensor_power">Cumhacht (W)</string>
|
||||
<string name="export_with_photos">le grianghraif</string>
|
||||
<string name="export_without_photos">gan grianghraif</string>
|
||||
<string name="export_cannot_write_to_dir">Ní féidir scríobh chuig an eolaire easpórtála.</string>
|
||||
<string name="export_dir_not_writable">" (Ní inscríofa!)"</string>
|
||||
<string name="export_progress_summary_new_msg">Rianta nua easpórtáilte</string>
|
||||
<string name="export_progress_summary_overwrite_msg">Rianta forscríofa</string>
|
||||
<string name="export_progress_summary_skip_msg">Rianta skip</string>
|
||||
<string name="generic_delete_selected_confirm_title">Scrios roghnaithe\?</string>
|
||||
<string name="export_all_do_it_for_all">é a dhéanamh do gach coinbhleacht</string>
|
||||
<string name="export_progress_summary_errors_msg">Earráidí</string>
|
||||
<string name="generic_add">Cuir</string>
|
||||
<string name="export_progress_message">Á easpórtáil go %1$s…</string>
|
||||
<string name="generic_description_line">Cur síos: %1$s</string>
|
||||
<string name="generic_name">Ainm</string>
|
||||
<string name="generic_name_line">Ainm: %1$s</string>
|
||||
<string name="generic_open_track">Rian Oscailte</string>
|
||||
<string name="generic_recording">Ag taifeadadh…</string>
|
||||
<string name="generic_tracks">Rianta</string>
|
||||
<string name="generic_overwrite">Forscríobh</string>
|
||||
<string name="generic_skip">Scipeáil</string>
|
||||
<string name="generic_show_errors">Taispeáin Earráidí</string>
|
||||
<string name="generic_choose_an_option">Roghnaigh rogha</string>
|
||||
<string name="generic_undo">Cealaigh</string>
|
||||
<string name="generic_from">Ó</string>
|
||||
<string name="generic_to">Chun</string>
|
||||
<string name="gps_wait_for_signal">Ag fanacht le comhartha GPS</string>
|
||||
<string name="gps_disabled_msg">GPS díchumasaithe</string>
|
||||
<string name="gps_fixed_and_ready">GPS seasta agus réidh</string>
|
||||
<string name="gps_recording_status">%1$s: %2$s</string>
|
||||
<string name="gps_recording_without_signal">Tá OpenTracks ag taifeadadh gan sonraí GPS.</string>
|
||||
<string name="generic_today">Inniu</string>
|
||||
<string name="generic_yesterday">Inné</string>
|
||||
<string name="generic_dismiss">Díbhe</string>
|
||||
<string name="gps_starting">Ag tosú GPS</string>
|
||||
<string name="image_arrow">Saighead</string>
|
||||
<string name="image_marker_count">Comhaireamh marcóra</string>
|
||||
<string name="image_photo_marker">Marcóir grianghraf</string>
|
||||
<string name="image_record">Taifead</string>
|
||||
<string name="image_discard">Caith amach</string>
|
||||
<string name="image_track">Rian</string>
|
||||
<string name="import_thread_interrupted">Snáithe isteach</string>
|
||||
<string name="import_unsupported_format">Formáid comhaid nach dtacaítear léi</string>
|
||||
<string name="import_parser_error">Earráid pharsálaí: %1$s</string>
|
||||
<string name="import_unable_to_import_file">Ní féidir an comhad a iompórtáil: %1$s</string>
|
||||
<string name="import_no_kml_file_found">Níor aimsíodh aon chomhad doc.kml i KMZ</string>
|
||||
<string name="import_error_info">%1$s: %2$s</string>
|
||||
<string name="image_marker">Marcóir</string>
|
||||
<string name="import_progress_summary_exists_msg">Atá ann cheana</string>
|
||||
<string name="import_progress_summary_errors_msg">Earráidí</string>
|
||||
<string name="import_error_list_dialog_title">Comhaid nár iompórtáladh</string>
|
||||
<string name="import_file_imported">Iompórtáladh comhad %1$s</string>
|
||||
<string name="import_progress_message">Á iompórtáil ó %1$s…</string>
|
||||
<string name="import_progress_summary_ok_msg">Comhaid iompórtáilte</string>
|
||||
<string name="marker_add_error">Ní féidir marcóir a chur isteach. Gan comhartha GPS. Déan iarracht arís.</string>
|
||||
<string name="marker_add_success">Cuireadh marcóir isteach</string>
|
||||
<string name="marker_delete_one_confirm_title">Scrios an marcóir\?</string>
|
||||
<string name="marker_delete_multiple_confirm_message">Scriosfar na marcóirí roghnaithe go buan ón bhfeiste</string>
|
||||
<string name="marker_name_format">Marcóir %1$d</string>
|
||||
<string name="marker_title">%1$d de %2$d</string>
|
||||
<string name="marker_edit_marker_type">Cineál marcóra (m.sh. eas)</string>
|
||||
<string name="menu_aggregated_statistics">Staitisticí comhiomlána</string>
|
||||
<string name="menu_delete">Scrios</string>
|
||||
<string name="menu_edit">Cuir in eagar</string>
|
||||
<string name="menu_export_all">Easpórtáil go léir</string>
|
||||
<string name="menu_help">Cabhrú</string>
|
||||
<string name="marker_list_empty_message">Níl aon marcóirí agat</string>
|
||||
<string name="menu_import_all">Iompórtáil go léir</string>
|
||||
<string name="menu_insert_marker">Cuir isteach marcóir</string>
|
||||
<string name="menu_insert_gallery_img">Cuir isteach íomhá gailearaí</string>
|
||||
<string name="menu_markers">Marcóirí</string>
|
||||
<string name="menu_search">Cuardach</string>
|
||||
<string name="menu_select_all">Roghnú go léir</string>
|
||||
<string name="menu_settings">Socruithe</string>
|
||||
<string name="menu_share">Comhroinn</string>
|
||||
<string name="menu_start_gps">Tosaigh GPS</string>
|
||||
<string name="menu_stop_gps">Stop a chur le GPS</string>
|
||||
<string name="menu_voice_rate">Luas gutha</string>
|
||||
<string name="menu_resume_track">Lean an rian</string>
|
||||
<string name="menu_filter">Scagaire</string>
|
||||
<string name="permission_gps_failed">Teastaíonn cead ó OpenTracks chun GPS a úsáid.</string>
|
||||
<string name="permission_bluetooth_failed">Teastaíonn cead ó OpenTracks chun Bluetooth a úsáid.</string>
|
||||
<string name="recording_service">Seirbhís taifeadta</string>
|
||||
<string name="delete_service">Seirbhís scriosta</string>
|
||||
<string name="sensor_state_heart_rate">Bualadh croí</string>
|
||||
<string name="sensor_state_cadence_avg">Meán Fómhair</string>
|
||||
<string name="sensor_state_cadence_max">Cadence Max</string>
|
||||
<string name="sensor_state_power">Cumhacht</string>
|
||||
<string name="sensor_state_power_avg">Meán Cumhacht</string>
|
||||
<string name="sensor_state_heart_rate_avg">Meán ráta croí</string>
|
||||
<string name="sensor_could_not_scan">Níorbh fhéidir scanadh le haghaidh gléasanna Bluetooth (earráid %1$i).</string>
|
||||
<string name="settings_defaults_summary">Aonaid Rogha, Gníomhaíocht Réamhshocraithe, Rianaigh Ainm Réamhshocraithe</string>
|
||||
<string name="settings_ui_summary">Dealramh, Leagan Amach Taifeadta, Téama</string>
|
||||
<string name="settings_sensors_summary">Braiteoirí Rothaíochta, Imlíne Rothaí, Braiteoirí Reatha</string>
|
||||
<string name="bluetooth_disabled">Cumasaigh Bluetooth le do thoil.</string>
|
||||
<string name="settings_open_tracks_title">Open Tracks</string>
|
||||
<string name="settings_open_tracks_summary">Gach Maidir Tionscadal OpenTracks</string>
|
||||
<string name="settings_defaults_title">Aonaid agus Gníomhaíocht Réamhshocraithe</string>
|
||||
<string name="settings_ui_title">Comhéadan Úsáideora</string>
|
||||
<string name="settings_sensors_title">Braiteoirí Bluetooth</string>
|
||||
<string name="settings_announcements_summary">Am, Fad, Luas Gutha</string>
|
||||
<string name="settings_import_export_title">Iompórtáil/Easpórtáil</string>
|
||||
<string name="settings_import_export_summary">Iompórtáil, Easpórtáil, Uathoibríoch</string>
|
||||
<string name="settings_units_category">Aonaid</string>
|
||||
<string name="settings_activity_defaults_category">Réamhshocruithe Gníomhaíochta</string>
|
||||
<string name="settings_advanced">Casta</string>
|
||||
<string name="settings_default_trackfileformat">Formáid comhaid a onnmhairiú/a roinnt</string>
|
||||
<string name="settings_export_filename_title">Formáid ainm an chomhaid</string>
|
||||
<string name="settings_chart_by_distance">De réir achair</string>
|
||||
<string name="settings_chart_by_time">De réir ama</string>
|
||||
<string name="settings_recording_customize_layout_title">Saincheap do leagan amach taifeadta</string>
|
||||
<string name="settings_recording_customize_layout_select_columns">Réimsí sonraí de réir a chéile</string>
|
||||
<string name="settings_recording_show_on_lockscreen_while_recording_summary">Agus tú ag taifeadadh, taispeáin staitisticí gan an gléas a dhíghlasáil.</string>
|
||||
<string name="settings_recording_keep_screen_on_while_recording_title">Coinnigh an scáileán ar</string>
|
||||
<string name="settings_recording_keep_screen_on_while_recording_summary">Agus tú ag taifeadadh, coinnigh an scáileán ar siúl.</string>
|
||||
<string name="settings_recording_fullscreen_on_while_recording_title">Scáileán iomlán</string>
|
||||
<string name="settings_recording_fullscreen_on_while_recording_summary">Agus tú ag taifeadadh, cuir i láthair ar lánscáileán.</string>
|
||||
<string name="settings_recording_default_activity_title">Cineál gníomhaíochta réamhshocraithe</string>
|
||||
<string name="settings_recording_location_frequency_summary">%1$s idir suíomhanna taifeadta</string>
|
||||
<string name="settings_recording_max_recording_distance_summary">Cruthaítear teascán nua má tá an fad idir dhá shuíomh níos mó ná %1$s</string>
|
||||
<string name="settings_recording_max_recording_distance_title">Fad uasta</string>
|
||||
<string name="settings_recording_min_required_accuracy_summary">Ní thugtar aird ar shuíomh má tá a chruinneas níos lú ná %1$s</string>
|
||||
<string name="settings_recording_min_required_accuracy_title">Cruinneas GPS</string>
|
||||
<string name="settings_recording_track_name_date_iso_8601_option">Dáta (ISO 8601)</string>
|
||||
<string name="settings_recording_track_name_date_local_option">Dáta (áitiúil)</string>
|
||||
<string name="settings_recording_track_name_number_option">Uimhir</string>
|
||||
<string name="settings_recording_track_name_title">Ainm rian réamhshocraithe</string>
|
||||
<string name="settings_recording_idle_speed_title">Tairseach luais díomhaoin</string>
|
||||
<string name="settings_night_mode_title">Téama Chomhéadain</string>
|
||||
<string name="settings_night_mode_option_system">Córas</string>
|
||||
<string name="settings_night_mode_option_day">Lá</string>
|
||||
<string name="settings_night_mode_option_night">Oíche</string>
|
||||
<string name="settings_announcements_distance_frequency">Fad eatramh</string>
|
||||
<string name="settings_announcements_lap_heart_rate">Ráta croí glúine</string>
|
||||
<string name="settings_announcements_average_speed_pace">Meánluas/luas</string>
|
||||
<string name="settings_announcements_lap_speed_pace">Luas/luas glúine</string>
|
||||
<string name="custom_layout_list_title">Leaganacha</string>
|
||||
<string name="custom_layout_list_edit_name">Clóscríobh ainm an leagan amach le cur leis</string>
|
||||
<string name="custom_layout_list_layout_removed">Baineadh an leagan amach</string>
|
||||
<string name="custom_layout_select_layout">Roghnaigh Leagan Amach</string>
|
||||
<string name="stats_custom_layout_default_layout">Leagan Amach Réamhshocraithe</string>
|
||||
<string name="settings_layout_reset">Athshocraigh Leagan Amach an Chustaim</string>
|
||||
<string name="settings_all_reset">Athshocraigh</string>
|
||||
<string name="settings_reset_confirm_message">Cuirfear gach socrú ar ais chuig na luachanna réamhshocraithe. Ní scriosfaidh sé seo aon rianta ar an bhfeiste.</string>
|
||||
<string name="settings_reset_confirm_title">Athshocraigh anois\?</string>
|
||||
<string name="settings_generic_sensor">Cineálach</string>
|
||||
<string name="settings_cycling_sensor">Rothaíocht</string>
|
||||
<string name="settings_running_sensor">Ag rith</string>
|
||||
<string name="settings_sensor_cycling_distance_speed">Fad agus Luas</string>
|
||||
<string name="settings_sensor_cycling_cadence">Deireadh</string>
|
||||
<string name="settings_sensor_running_speed_and_cadence">Fad, Luas, agus Deireadh</string>
|
||||
<string name="settings_sensor_wheel_circumference">Imlíne Rothaí (mm)</string>
|
||||
<string name="settings_stats_rate_title">An ráta is fearr</string>
|
||||
<string name="settings_stats_units_imperial">Imperial (mi, ft)</string>
|
||||
<string name="settings_stats_units_metric">méadrach (km, m)</string>
|
||||
<string name="settings_stats_units_nautical">Mara (NM, ft)</string>
|
||||
<string name="settings_stats_units_title">Aonaid tosaíochta</string>
|
||||
<string name="settings_public_api_enabled_summary_on">Is féidir le feidhmchláir suiteáilte eile taifeadtaí a thosú nó a stopadh.</string>
|
||||
<string name="settings_public_api_enabled_summary_off">Ní féidir ach le OpenTracks taifeadtaí a thosú agus a stopadh.</string>
|
||||
<string name="settings_public_api_dashboard_enabled_summary_off">Ní dhéanfar sonraí taifeadta a roinnt go huathoibríoch le feidhmchláir eile.</string>
|
||||
<string name="settings_import_section">Iompórtáil</string>
|
||||
<string name="settings_export_section">Easpórtáil</string>
|
||||
<string name="share_track_share_file_body">Sílim go mb\'fhéidir go mbeadh suim agat sa rian seo.
|
||||
\n
|
||||
\n%1$s</string>
|
||||
<string name="share_track_subject">Ba mhaith liom rian a roinnt leat</string>
|
||||
<string name="stats_average_moving_pace">Meán luas ag gluaiseacht</string>
|
||||
<string name="stats_average_moving_speed">Meán luas ag gluaiseacht</string>
|
||||
<string name="stats_average_speed">Meánluas</string>
|
||||
<string name="stats_fastest_pace">An luas is tapúla</string>
|
||||
<string name="stats_gain">Gnóthachan</string>
|
||||
<string name="stats_loss">Caillteanas</string>
|
||||
<string name="stats_latitude">Domhanleithead</string>
|
||||
<string name="stats_moving_time">Am ag bogadh</string>
|
||||
<string name="stats_pace">Luas</string>
|
||||
<string name="stats_speed">Luas</string>
|
||||
<string name="stats_total_time">Am iomlán</string>
|
||||
<string name="stats_sensors_heart_rate">Bualadh croí</string>
|
||||
<string name="stats_sensors_cadence">Reachtaínn reachtaíteá</string>
|
||||
<string name="stats_sensors_power">Cumhacht</string>
|
||||
<string name="stats_clock">Clog</string>
|
||||
<string name="track_recording_notification_accuracy">Cruinneas suímh: %1$s</string>
|
||||
<string name="instant_export_enabled_summary">Easpórtáil rian go dtí stóráil tar éis an taifeadadh críochnaithe</string>
|
||||
<string name="instant_export_enabled_title">Easpórtáil láithreach iar- workout</string>
|
||||
<string name="settings_default_export_uri_title">Rian eolaire easpórtála</string>
|
||||
<string name="hold_to_stop">Coinnigh chun stop a chur</string>
|
||||
<string name="share_image_subject">Ba mhaith liom íomhá a roinnt leat</string>
|
||||
<string name="show_on_dashboard">API Painéal OpenTracks</string>
|
||||
<string name="show_on_map_format_ask">Iarr</string>
|
||||
<string name="select_show_on_map_behavior">Roghnaigh iompar \"taispeáin ar léarscáil\"</string>
|
||||
<string name="report_bug">Tuairiscigh fabht</string>
|
||||
<string name="share_crash_report">Comhroinn tuairisc tuairteála</string>
|
||||
<string name="no_compatible_file_manager_installed">Níl aon bhainisteoir comhad comhoiriúnach suiteáilte</string>
|
||||
<string name="introduction_osm_dashboard">OpenTracks féin nach bhfuil a chur ar fáil léarscáil. Suiteáilsdashboard chun do thaifeadtaí a fheiceáil ar léarscáil.</string>
|
||||
<string name="about_third_party_data">Sonraí tríú páirtí</string>
|
||||
<string name="help_feature_content">* cruthaigh rianta GPS
|
||||
\n * úsáid braiteoir ráta croí (Bluetooth le amháin)
|
||||
\n * fógairtí gutha (de réir ama nó achair)
|
||||
\n * cruthaigh marcóirí (lena n-áirítear. pictiúir)
|
||||
\n * oibríonn sé go hiomlán as líne
|
||||
\n * taispeáin rianta ar léarscáil (féach thíos)</string>
|
||||
<string name="help_data_storage_content"> Stóráiltear sonraí braiteora in aghaidh an tsuímh taifeadta. Maidir le braiteoir ráta croí, ciallaíonn sé seo nach stóráiltear ach tomhas ráta croí <i>amháin</i> in aghaidh an tsuímh. Má tá tú i do sheasamh nó má tá tú istigh, ní dhéanfar aon sonraí braite a thaifeadadh (ach taispeánfar é). </string>
|
||||
<string name="activity_type_sky_jumping">léim spéir</string>
|
||||
<string name="export_track_errors">Rianta gan easpórtáil</string>
|
||||
<string name="marker_add_photo_canceled">Ar ceal, níor cuireadh marcóir grianghraf leis</string>
|
||||
<string name="generic_save">Sábháil</string>
|
||||
<string name="activity_type_track_cycling">rothaíocht rian</string>
|
||||
<string name="marker_delete_one_confirm_message">Scriosfar an marcóir go buan ón bhfeiste</string>
|
||||
<string name="generic_separator_done_total">/</string>
|
||||
<string name="description_average_pace_in_minute">Meánluas: %1$s nóim/km (%2$s nóim/mi)</string>
|
||||
<string name="export_track_already_exists_msg">Tá an rian %1$s sa chomhadlann sprice cheana.</string>
|
||||
<string name="generic_completed">Críochnaithe</string>
|
||||
<string name="description_total_distance">Fad iomlán: %1$.2f km (%2$.1f mi)</string>
|
||||
<string name="generic_description">Cur síos</string>
|
||||
<string name="generic_click_twice_cancel">Cliceáil ar ais arís le cur ar ceal</string>
|
||||
<string name="export_error_post_workout">Theip ar easpórtáil iar-oibriúcháin, seiceáil an eolaire easpórtála.</string>
|
||||
<string name="generic_filter">Scagaire</string>
|
||||
<string name="gps_wait_for_better_signal">Ag fanacht le comhartha GPS níos fearr</string>
|
||||
<string name="marker_add_canceled">Ar ceal, níor cuireadh marcóir leis</string>
|
||||
<string name="menu_insert_photo">Cuir isteach grianghraf</string>
|
||||
<string name="menu_select_layout">Roghnaigh Leagan Amach</string>
|
||||
<string name="menu_show_on_map">Taispeáin ar léarscáil</string>
|
||||
<string name="menu_add_custom_layout">Leagan Amach Nua</string>
|
||||
<string name="permission_bluetooth_failed_rejected">Ní mór duit rochtain a thabhairt do OpenTracks de láimh ar Ghléasanna In aice láimhe i socruithe an chórais.</string>
|
||||
<string name="settings_gps_summary">Eatramh ama, Fad-eatramh, Fad Max, Cruinneas</string>
|
||||
<string name="about_description"><i>Open Tracks</i> is iarratas rianaithe spóirt go n-urramaíonn go hiomlán do phríobháideacht.</string>
|
||||
<string name="help_track_export_content"> Is féidir rianta a easpórtáil ó na Socruithe mar KMZ, KML, nó GPX. na sonraí go léir KMZ/KML; Suíomhanna GPX amháin. Roinntear rianta a roinntear tríd an <i>deilbhín comhroinnte</i> mar KMZ. </string>
|
||||
<string name="help_track_map_content">" Bain úsáid as an deilbhín léarscáile beag.
|
||||
\n a) (nuashonraithe beo) Suiteáil <a href=\"https://github.com/OpenTracksApp/OSMDashboard\">OSMDashboard</a>. Soláthraíonn sé léarscáileanna ar líne nó as líne trí <a href=\"https://www.openstreetmap.org\">OpenStreetMap</a>.
|
||||
\n I ndáiríre, is aip ar leith é OSMDashboard nach féidir ach rochtain a fháil (go sealadach) ar shonraí na rianta atá le taispeáint.
|
||||
\n b) Trí ghnáthfheidhmchlár léarscáile (m.sh., <a href=\"http://osmand.net/\">OsmAnd</a> agus <a href=\"https://maps.me/\">MAPS.ME< /a>). Ní mór do na haipeanna seo tacú le formáid comhaid KMZ (suíomhanna agus stampaí ama amháin). Go deimhin, caithfidh aip tacaíocht a thabhairt do <i>ACTION_VIEW</i> le MIME <i>application/vnd.google-earth.kmz</i>. "</string>
|
||||
<string name="activity_type_ultimate_frisbee">frisbee deiridh</string>
|
||||
<string name="description_total_time">Am iomlán: %1$s</string>
|
||||
<string name="activity_type_inline_skating">scátáil inlíne</string>
|
||||
<string name="import_prevent_reimport">Tá rian athiompórtála coiscthe socraithe agat</string>
|
||||
<string name="sensor_state_heart_rate_max">Ráta croí uasta</string>
|
||||
<string name="custom_layout_list_edit_already_exists">Tá ainm an leagain amach ann cheana féin</string>
|
||||
<string name="sensor_state_heart_rate_value">%1$d ban</string>
|
||||
<string name="description_fastest_pace_in_minute">An luas is tapúla: %1$s nóim/km (%2$s nóim/mi)</string>
|
||||
<string name="settings_reset_summary">Athshocraigh Socruithe go Luachanna Réamhshocraithe</string>
|
||||
<string name="settings_announcements_totaltime_frequency">Eatramh ama</string>
|
||||
<string name="settings_layout_reset_confirm_message">Cuirfear gach socrú leagan amach ar ais chuig na luachanna réamhshocraithe. Ní scriosfaidh sé seo aon rianta ar an bhfeiste.</string>
|
||||
<string name="settings_announcements_title">Fógraí Gutha</string>
|
||||
<string name="settings_recording_show_on_lockscreen_while_recording_title">Taispeáin staitisticí ar an scáileán glas</string>
|
||||
<string name="settings_announcements_average_heart_rate">Meánráta croí</string>
|
||||
<string name="settings_layout_reset_confirm_title">Athshocraigh do leagan amach\?</string>
|
||||
<string name="activity_type_road_biking">rothaíocht bóthair</string>
|
||||
<string name="settings_recording_min_recording_distance_title">Taifeadadh eatramh achair</string>
|
||||
<string name="settings_layout_reset_done">Tá na socruithe leagan amach go léir curtha ar ais chuig na luachanna réamhshocraithe</string>
|
||||
<string name="settings_recording_min_recording_interval_title">Eatramh ama a thaifeadadh</string>
|
||||
<string name="settings_reset_done">Tá na socruithe go léir curtha ar ais chuig na luachanna réamhshocraithe</string>
|
||||
<string name="settings_sensor_bluetooth_service_filter_enabled">Ná taispeáin ach gléasanna Bluetooth a fhógraíonn seirbhísí riachtanacha</string>
|
||||
<string name="settings_public_api_dashboard_enabled_title">Aistriú sonraí uathoibríoch</string>
|
||||
<string name="settings_public_api_dashboard_enabled_summary_on">Is féidir le feidhmchlár a thosaigh taifeadadh rochtain a fháil ar na sonraí taifeadta freisin.</string>
|
||||
<string name="settings_prevent_reimport_tracks_title">Cosc a chur ar ath-allmhairiú rianta</string>
|
||||
<string name="stats_average_pace">Meánluas</string>
|
||||
<string name="track_delete_multiple_confirm_message">Scriosfar na rianta roghnaithe agus a gcuid marcóirí go buan ón bhfeiste.</string>
|
||||
<string name="always">I gcónaí</string>
|
||||
<string name="show_on_dashboard_not_installed">Níl aon fheidhmchlár a thacaíonn le OpenTracks Dashboard API suiteáilte.</string>
|
||||
<string name="share_image_body">Sílim go mb\'fhéidir go mbeadh suim agat san íomhá seo.</string>
|
||||
<string name="help_support_content"> You can:
|
||||
\n a) spread the word about OpenTracks,
|
||||
\n b) <a href="https://github.com/OpenTracksApp/OpenTracks/issues">propose features</a>,
|
||||
\n c) <a href="https://github.com/OpenTracksApp/OpenTracks/issues">report bugs</a>,
|
||||
\n d) help in software development,
|
||||
\n e) buy in <a href="https://play.google.com/store/apps/details?id=de.dennisguse.opentracks.playstore">Google Play Store</a>,
|
||||
\n f) donate, and
|
||||
\n g) do whatever you think helps OpenTracks. </string>
|
||||
<string name="settings_public_api_disabled_toast">Tá OpenTracks Public API díchumasaithe: is féidir é a chumasú sna socruithe.</string>
|
||||
<string name="stats_altitude">Airde</string>
|
||||
<string name="stats_coordinates">Domhanleithead/Domhanfhad</string>
|
||||
<string name="stats_longitude">Domhanfhad</string>
|
||||
<string name="stats_max_speed">Luas uasta</string>
|
||||
<string name="stats_distance">Fad</string>
|
||||
<string name="stats_split_interval">Eatramh scoilte</string>
|
||||
<string name="track_name_format">Rianaigh %1$d</string>
|
||||
<string name="activity_type_atv">ATV</string>
|
||||
<string name="activity_type_helicopter">héileacaptar</string>
|
||||
<string name="description_sensor_cadence">Mál (rpm )</string>
|
||||
<string name="description_speed_source_gps">GPS</string>
|
||||
<string name="image_stop">Stad</string>
|
||||
<string name="settings_gps_title">GPS</string>
|
||||
<string name="settings_sensor_bluetooth">Bluetoothname</string>
|
||||
<string name="settings_api_title">API Poiblí</string>
|
||||
<string name="settings_public_api_package_title">Ainm an phacáiste don API Poiblí</string>
|
||||
<string name="settings_public_api_enabled_title">API Poiblí</string>
|
||||
<string name="track_distance_notification">Fad: %1$s</string>
|
||||
<string name="track_speed_notification">Luas: %1$s</string>
|
||||
<string name="track_markers">%1$s Marcóirí</string>
|
||||
<string name="track_delete_one_confirm_title">An bhfuil fonn ort an rian a scriosadh\?</string>
|
||||
<string name="track_delete_progress_message">Ag scriosadh…</string>
|
||||
<string name="track_delete_number_of_tracks">%1$d traic</string>
|
||||
<string name="track_discarding">Rian a Dhéanamh</string>
|
||||
<string name="track_detail_stats_tab">Staitisticí</string>
|
||||
<string name="track_detail_intervals_tab">Eatraimh</string>
|
||||
<string name="track_list_empty_message">Tosaigh do chéad eachtra eile a thaifeadadh anseo</string>
|
||||
<string name="aggregated_stats_filter_no_results">Níl aon ghníomhaíochtaí ann don scagaire sonraithe</string>
|
||||
<string name="interval_list_empty_message">Níl aon eatramh fós</string>
|
||||
<string name="unit_feet">ft</string>
|
||||
<string name="unit_kilometer_per_hour">km/u</string>
|
||||
<string name="unit_mile_per_hour">mph</string>
|
||||
<string name="unit_mile">mi</string>
|
||||
<string name="unit_minute_per_kilometer">nóim/km</string>
|
||||
<string name="value_integer_feet_recommended">%1$dft (molta)</string>
|
||||
<string name="value_integer_kilometer_hour">%1$d km/u</string>
|
||||
<string name="value_float_kilometer_hour">%1$.1f km/u</string>
|
||||
<string name="value_integer_feet_excellent_gps">%1$d tr (GPS ar fheabhas)</string>
|
||||
<string name="location_latitude_longitude">%1$s, %2$s</string>
|
||||
<string name="location_coordinate">%1$s°</string>
|
||||
<string name="unit_minute_per_nautical_mile">nóim/NM</string>
|
||||
<string name="value_integer_meter_excellent_gps">%1$d m (GPS ar fheabhas)</string>
|
||||
<string name="value_integer_meter_poor_gps">%1$d m (GPS go dona)</string>
|
||||
<string name="value_integer_meter_recommended">%1$d m (molta)</string>
|
||||
<string name="value_integer_mile_hour">%1$d míle/u</string>
|
||||
<string name="value_integer_knots">%1$d muirmhíle</string>
|
||||
<string name="value_float_mile_hour">%1$.1f mi/u</string>
|
||||
<string name="value_float_knots">%1$.1f muirmhíle</string>
|
||||
<string name="value_float_knots_recommended">%1$.1f muirmhíle (molta)</string>
|
||||
<string name="value_integer_minute">%1$d nóim</string>
|
||||
<string name="value_none">Dada</string>
|
||||
<string name="value_off">as</string>
|
||||
<string name="lap_time">Am lap</string>
|
||||
<string name="pace">Luas</string>
|
||||
<string name="lap_speed">Luas lap</string>
|
||||
<string name="total_distance">Fad iomlán</string>
|
||||
<string name="waypoint_type_atm">ATM</string>
|
||||
<string name="waypoint_type_building">foirgneamh</string>
|
||||
<string name="waypoint_type_bus_stop">stad an bhus</string>
|
||||
<string name="waypoint_type_bar">barra</string>
|
||||
<string name="waypoint_type_bank">bainc</string>
|
||||
<string name="waypoint_type_campfire">tine champa</string>
|
||||
<string name="waypoint_type_campground">campáil</string>
|
||||
<string name="waypoint_type_church">eaglais</string>
|
||||
<string name="waypoint_type_coffee_house">teach caife</string>
|
||||
<string name="waypoint_type_convenience_store">siopa áise</string>
|
||||
<string name="waypoint_type_drinking_water">fíoruisce</string>
|
||||
<string name="waypoint_type_falling_rocks">carraigeacha ag titim</string>
|
||||
<string name="waypoint_type_ferry">farantóireachta</string>
|
||||
<string name="waypoint_type_fire_place">teallach</string>
|
||||
<string name="waypoint_type_fishing">iascaireacht</string>
|
||||
<string name="waypoint_type_gas_station">stáisiún peitril</string>
|
||||
<string name="waypoint_type_golf_course">cúrsa gailf</string>
|
||||
<string name="waypoint_type_hair_dresser">gruagaire</string>
|
||||
<string name="waypoint_type_harbor">chuain</string>
|
||||
<string name="waypoint_type_hotel">Óstán</string>
|
||||
<string name="waypoint_type_information">eolas</string>
|
||||
<string name="waypoint_type_house">teach</string>
|
||||
<string name="waypoint_type_police_station">stáisiún na nGardaí</string>
|
||||
<string name="waypoint_type_parking">páirceáil</string>
|
||||
<string name="waypoint_type_opera">ceoldráma</string>
|
||||
<string name="waypoint_type_meeting_point">pointe cruinnithe</string>
|
||||
<string name="waypoint_type_market">margadh</string>
|
||||
<string name="waypoint_type_mail_box">bosca poist</string>
|
||||
<string name="waypoint_type_restaurant">bialann</string>
|
||||
<string name="waypoint_type_railway_crossing">crosaire iarnróid</string>
|
||||
<string name="waypoint_type_pothole">pollpholl</string>
|
||||
<string name="waypoint_type_swimming_pool">linn snámha</string>
|
||||
<string name="waypoint_type_store">stór</string>
|
||||
<string name="waypoint_type_sight">radharc</string>
|
||||
<string name="waypoint_type_toilet">leithreas</string>
|
||||
<string name="waypoint_type_theater">amharclann</string>
|
||||
<string name="waypoint_type_water_fountain">tobair uisce</string>
|
||||
<string name="waypoint_type_waterfall">eas</string>
|
||||
<string name="waypoint_type_tunnel">tollán</string>
|
||||
<string name="waypoint_type_tree">crann</string>
|
||||
<string name="field_remove_from_layout">Bain</string>
|
||||
<string name="field_set_secondary">Tánaisteach</string>
|
||||
<string name="field_set_primary">Bunscoile</string>
|
||||
<string name="error_crash_title">%1$stuairteála</string>
|
||||
<string name="value_float_kilometer_hour_recommended">%1$.1f km/u (molta)</string>
|
||||
<string name="track_edit_activity_type">Cineál gníomhaíochta (m.sh. fánaíocht)</string>
|
||||
<string name="value_float_mile_hour_recommended">%1$.1f mi/u (molta)</string>
|
||||
<string name="track_edit_activity_type_hint">Cineál gníomhaíochta</string>
|
||||
<string name="value_integer_second">%1$d s</string>
|
||||
<string name="aggregated_stats_empty_message">Taifead do chéad rian chun staitisticí comhiomlánaithe a fheiceáil</string>
|
||||
<string name="value_smallest_recommended">is lú (molta)</string>
|
||||
<string name="voice_per_kilometer">in aghaidh an chiliméadair</string>
|
||||
<string name="voice_per_mile">in aghaidh an mhíle</string>
|
||||
<string name="voice_per_nautical_mile">in aghaidh an mhuirmhíle</string>
|
||||
<string name="speed">Meánluas ag gluaiseacht</string>
|
||||
<string name="average_heart_rate">Meánráta croí</string>
|
||||
<string name="current_heart_rate">Ráta croí reatha</string>
|
||||
<string name="waypoint_type_barbecue">beárbaiciú</string>
|
||||
<string name="waypoint_type_cafe">caifé</string>
|
||||
<string name="waypoint_type_fire_station">stáisiún Dóiteáin</string>
|
||||
<string name="waypoint_type_grocery_store">siopa grósaera</string>
|
||||
<string name="waypoint_type_hiking_path">cosán hiking</string>
|
||||
<string name="waypoint_type_waypoint">bealachbhealach</string>
|
||||
<string name="waypoint_type_tourist_information">eolas turasóireachta</string>
|
||||
<string name="waypoint_type_telephone">teileafón</string>
|
||||
<string name="waypoint_type_shopping">siopadóireacht</string>
|
||||
<string name="track_pace_notification">Luas: %1$s</string>
|
||||
<string name="track_delete_one_confirm_message">Beidh an rian agus a marcóirí a scriosadh go buan as an gléas.</string>
|
||||
<string name="waypoint_type_post_office">Oifig an Phoist</string>
|
||||
<string name="waypoint_type_intersection">crosbhealach</string>
|
||||
<string name="unit_minute_per_mile">nóim/mi</string>
|
||||
<string name="unit_knots">kn</string>
|
||||
<string name="unit_nautical_mile">NM</string>
|
||||
<string name="unit_meter">m</string>
|
||||
<string name="unit_kilometer">km</string>
|
||||
<string name="track_delete_not_recording">Ní féidir an traic seo a scriosadh mar go bhfuil sé taifeadta faoi láthair.</string>
|
||||
</resources>
|
||||
@@ -552,7 +552,7 @@ Se o GPS informa sobre datos pouco precisos (ex.: localización, velocidade, ele
|
||||
<string name="total_distance">Distancia total</string>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 milla</item>
|
||||
<item quantity="other">%1$.2f millas</item>
|
||||
<item quantity="other">%1$.1f millas</item>
|
||||
</plurals>
|
||||
<string name="settings_public_api_enabled_summary_on">Outras aplicacións instaladas poden iniciar ou deter gravacións.</string>
|
||||
<string name="settings_public_api_enabled_summary_off">Só OpenTracks pode iniciar e deter as gravacións.</string>
|
||||
@@ -565,7 +565,7 @@ Se o GPS informa sobre datos pouco precisos (ex.: localización, velocidade, ele
|
||||
<string name="speed">Vel. media en movemento</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 quilómetro</item>
|
||||
<item quantity="other">%1$.2f quilómetros</item>
|
||||
<item quantity="other">%1$.1f quilómetros</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Pulso medio</string>
|
||||
<string name="current_heart_rate">Pulso actual</string>
|
||||
@@ -595,7 +595,7 @@ Se o GPS informa sobre datos pouco precisos (ex.: localización, velocidade, ele
|
||||
<string name="voice_per_nautical_mile">por milla náutica</string>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="one">1 milla náutica</item>
|
||||
<item quantity="other">%1$.2f millas náuticas</item>
|
||||
<item quantity="other">%1$.1f millas náuticas</item>
|
||||
</plurals>
|
||||
<string name="show_on_dashboard">Usar API OpenTracks</string>
|
||||
<plurals name="voiceSpeedMKnots">
|
||||
|
||||
@@ -554,16 +554,16 @@ limitations under the License.
|
||||
<string name="lap_time">Rundetid</string>
|
||||
<string name="pace">Tempo</string>
|
||||
<string name="lap_speed">Rundehastighet</string>
|
||||
<string name="speed">Hastighet</string>
|
||||
<string name="speed">Gjennomsnittlig forflytningshastighet</string>
|
||||
<string name="total_distance">Total distanse</string>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 engelsk mil</item>
|
||||
<item quantity="other">%1$.2f engelske mil</item>
|
||||
<item quantity="other">%1$.1f engelske mil</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Gjennomsnittlig puls</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 kilometer</item>
|
||||
<item quantity="other">%1$.2f kilometer</item>
|
||||
<item quantity="other">%1$.1f kilometer</item>
|
||||
</plurals>
|
||||
<string name="current_heart_rate">Gjeldende puls</string>
|
||||
<string name="settings_export_filename_title">Format på filnavnet</string>
|
||||
@@ -596,9 +596,11 @@ limitations under the License.
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="one">1 nautisk mil</item>
|
||||
<item quantity="other">%1$.2f nautiske mil</item>
|
||||
<item quantity="other">%1$.1f nautiske mil</item>
|
||||
</plurals>
|
||||
<string name="show_on_dashboard_not_installed">Ingen app som støtter OpenTracks Dashboard API er installert.</string>
|
||||
<string name="track_delete_number_of_tracks">%1$d spor</string>
|
||||
<string name="settings_public_api_package_title">Pakkenavn for Offentlig API</string>
|
||||
<string name="introduction_osm_dashboard">OpenTracks sørger ikke selv for et kart. Installer OSMDashboard for å vise opptakene dine på et kart.</string>
|
||||
<string name="help_data_google_play_services_content">Nei</string>
|
||||
</resources>
|
||||
@@ -512,11 +512,11 @@ Als het GPS-apparaat onnauwkeurige gegevens rapporteert (bijv. locatie, snelheid
|
||||
<string name="total_distance">Totale afstand</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 kilometer</item>
|
||||
<item quantity="other">%1$.2f kilometers</item>
|
||||
<item quantity="other">%1$.1f kilometers</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 mijl</item>
|
||||
<item quantity="other">%1$.2f mijlen</item>
|
||||
<item quantity="other">%1$.1f mijlen</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Gemiddelde hartslag</string>
|
||||
<string name="current_heart_rate">Actuele hartslag</string>
|
||||
|
||||
@@ -503,8 +503,8 @@
|
||||
<string name="settings_public_api_dashboard_enabled_summary_on">Um aplicativo que iniciou uma gravação também pode acessar os dados gravados.</string>
|
||||
<string name="settings_public_api_dashboard_enabled_summary_off">Os dados gravados não serão compartilhados automaticamente com outros aplicativos.</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">%1$.2f quilômetro</item>
|
||||
<item quantity="other">%1$.2f quilômetros</item>
|
||||
<item quantity="one">%1$.1f quilômetro</item>
|
||||
<item quantity="other">%1$.1f quilômetros</item>
|
||||
</plurals>
|
||||
<string name="generic_dismiss">Dispensar</string>
|
||||
<string name="settings_api_title">API pública</string>
|
||||
@@ -514,9 +514,44 @@
|
||||
<string name="lap_speed">Velocidade da volta</string>
|
||||
<string name="total_distance">Distância total</string>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">%1$.2f milha</item>
|
||||
<item quantity="other">%1$.2f milhas</item>
|
||||
<item quantity="one">%1$.1f milha</item>
|
||||
<item quantity="other">%1$.1f milhas</item>
|
||||
</plurals>
|
||||
<string name="current_heart_rate">Frequência cardíaca atual</string>
|
||||
<string name="settings_export_filename_title">Formato do nome do arquivo</string>
|
||||
<string name="settings_announcements_average_heart_rate">Frequência cardíaca média</string>
|
||||
<string name="settings_announcements_lap_heart_rate">Frequência cardíaca da volta</string>
|
||||
<string name="track_delete_number_of_tracks">%1$d trilhas</string>
|
||||
<string name="introduction_osm_dashboard">O próprio OpenTracks não fornece um mapa. Instale o OSMDashboard para visualizar suas gravações em um mapa.</string>
|
||||
<string name="description_pace_nautical">Ritmo (min/NM)</string>
|
||||
<string name="settings_public_api_package_title">Nome do pacote para API pública</string>
|
||||
<string name="value_float_knots_recommended">%1$.1f nós (recomendado)</string>
|
||||
<string name="image_discard">Descartar</string>
|
||||
<string name="report_bug">Relatório de problema</string>
|
||||
<string name="track_discarding">Descartando trilha</string>
|
||||
<string name="unit_knots">kn</string>
|
||||
<string name="unit_minute_per_nautical_mile">min/NM</string>
|
||||
<string name="value_integer_knots">%1$d nós</string>
|
||||
<string name="value_float_knots">%1$.1f nós</string>
|
||||
<string name="voice_per_nautical_mile">por milha náutica</string>
|
||||
<string name="settings_announcements_average_speed_pace">Velocidade/ritmo médio</string>
|
||||
<string name="show_on_dashboard_not_installed">Nenhum aplicativo compatível com o painel API do OpenTracks instalado.</string>
|
||||
<string name="settings_announcements_lap_speed_pace">Velocidade/ritmo de volta</string>
|
||||
<string name="settings_stats_units_nautical">Milha náutica (NM, ft)</string>
|
||||
<string name="unit_nautical_mile">NM</string>
|
||||
<string name="error_crash_title">%1$s falharam</string>
|
||||
<string name="share_crash_report">Compartilhar relatório de falha</string>
|
||||
<string name="select_show_on_map_behavior">Selecionar comportamento de \"mostrar no mapa\"</string>
|
||||
<string name="show_on_map_format_ask">Perguntas</string>
|
||||
<string name="show_on_dashboard">Painel API do OpenTracks</string>
|
||||
<string name="always">Sempre</string>
|
||||
<string name="description_speed_nautical">Velocidade (nós)</string>
|
||||
<plurals name="voiceSpeedMKnots">
|
||||
<item quantity="one">%1$.1f nó</item>
|
||||
<item quantity="other">%1$.1f nós</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="one">%1$.1f milha náutica</item>
|
||||
<item quantity="other">%1$.1f milhas náuticas</item>
|
||||
</plurals>
|
||||
</resources>
|
||||
@@ -515,10 +515,10 @@ limitations under the License.
|
||||
<string name="aggregated_stats_filter_no_results">Нет активностей для данного фильтра</string>
|
||||
<string name="custom_layout_list_edit_already_exists">Имя раскладки уже существует</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">%1$.2f километр</item>
|
||||
<item quantity="few">%1$.2f километра</item>
|
||||
<item quantity="many">%1$.2f километров</item>
|
||||
<item quantity="other">%1$.2f километров</item>
|
||||
<item quantity="one">%1$.1f километр</item>
|
||||
<item quantity="few">%1$.1f километра</item>
|
||||
<item quantity="many">%1$.1f километров</item>
|
||||
<item quantity="other">%1$.1f километров</item>
|
||||
</plurals>
|
||||
<string name="settings_layout_reset">Сбросить свои раскладки</string>
|
||||
<string name="settings_layout_reset_done">Настройки всех раскладок были сброшены</string>
|
||||
@@ -546,10 +546,10 @@ limitations under the License.
|
||||
<string name="speed">Скорость</string>
|
||||
<string name="total_distance">Общая дистанция</string>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">%1$.2f миля</item>
|
||||
<item quantity="few">%1$.2f миля</item>
|
||||
<item quantity="many">%1$.2f миль</item>
|
||||
<item quantity="other">%1$.2f миль</item>
|
||||
<item quantity="one">%1$.1f миля</item>
|
||||
<item quantity="few">%1$.1f миля</item>
|
||||
<item quantity="many">%1$.1f миль</item>
|
||||
<item quantity="other">%1$.1f миль</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Средний пульс</string>
|
||||
<string name="current_heart_rate">Текущий пульс</string>
|
||||
@@ -594,10 +594,10 @@ limitations under the License.
|
||||
</plurals>
|
||||
<string name="unit_knots">уз</string>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="one">%1$.2f морская миля</item>
|
||||
<item quantity="few">%1$.2f морские мили</item>
|
||||
<item quantity="many">%1$.2f морских миль</item>
|
||||
<item quantity="other">%1$.2f морских миль</item>
|
||||
<item quantity="one">%1$.1f морская миля</item>
|
||||
<item quantity="few">%1$.1f морские мили</item>
|
||||
<item quantity="many">%1$.1f морских миль</item>
|
||||
<item quantity="other">%1$.1f морских миль</item>
|
||||
</plurals>
|
||||
<string name="value_integer_knots">%1$d узлов</string>
|
||||
<string name="value_float_knots">%1$.1f узла</string>
|
||||
|
||||
@@ -526,7 +526,7 @@ limitations under the License.
|
||||
<string name="total_distance">Toplam mesafe</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 kilometre</item>
|
||||
<item quantity="other">%1$.2f kilometre</item>
|
||||
<item quantity="other">%1$.1f kilometre</item>
|
||||
</plurals>
|
||||
<string name="instant_export_enabled_summary">Kayıt tamamlandıktan sonra parçayı depolamaya aktar</string>
|
||||
<string name="value_float_mile_hour">%1$.1f mi/s</string>
|
||||
@@ -545,7 +545,7 @@ limitations under the License.
|
||||
<string name="speed">Hız</string>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 mil</item>
|
||||
<item quantity="other">%1$.2f mil</item>
|
||||
<item quantity="other">%1$.1f mil</item>
|
||||
</plurals>
|
||||
<string name="settings_recording_fullscreen_on_while_recording_title">Tam ekran</string>
|
||||
<string name="current_heart_rate">Şu anki kalp atış hızı</string>
|
||||
@@ -587,7 +587,7 @@ limitations under the License.
|
||||
<string name="voice_per_nautical_mile">deniz mili başına</string>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="one">1 deniz mili</item>
|
||||
<item quantity="other">%1$.2f deniz mili</item>
|
||||
<item quantity="other">%1$.1f deniz mili</item>
|
||||
</plurals>
|
||||
<string name="image_discard"/>
|
||||
<string name="settings_public_api_package_title">Genel API için paket adı</string>
|
||||
|
||||
@@ -548,10 +548,10 @@ limitations under the License.
|
||||
<string name="lap_speed">Vòng tốc độ</string>
|
||||
<string name="speed">Tốc độ di chuyển trung bình</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="other">%1$.2f Tầng km</item>
|
||||
<item quantity="other">%1$.1f Tầng km</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="other">%1$.2f dặm</item>
|
||||
<item quantity="other">%1$.1f dặm</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Nhịp tim trung bình</string>
|
||||
<string name="current_heart_rate">Hiện tại nhịp tim</string>
|
||||
@@ -568,7 +568,7 @@ limitations under the License.
|
||||
<string name="settings_stats_units_nautical">Hải lý (dặm hải lý, ft)</string>
|
||||
<string name="settings_public_api_package_title">Tên gói cho API công khai</string>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="other">%1$.2f dặm hải lý</item>
|
||||
<item quantity="other">%1$.1f dặm hải lý</item>
|
||||
</plurals>
|
||||
<string name="select_show_on_map_behavior">Chọn hành vi \"hiện trên bản đồ\"</string>
|
||||
<string name="settings_announcements_lap_speed_pace">Tốc độ vòng/nhịp độ</string>
|
||||
|
||||
@@ -490,10 +490,10 @@ limitations under the License.
|
||||
<string name="value_float_mile_hour_recommended">%1$.1f 英里/小时(推荐)</string>
|
||||
<string name="lap_time">单圈用时</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="other">%1$.2f 公里</item>
|
||||
<item quantity="other">%1$.1f 公里</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="other">%1$.2f 英里</item>
|
||||
<item quantity="other">%1$.1f 英里</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">平均心率</string>
|
||||
<string name="export_without_photos">不带照片</string>
|
||||
@@ -503,7 +503,7 @@ limitations under the License.
|
||||
</plurals>
|
||||
<string name="voice_per_nautical_mile">每海里</string>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="other">%1$.2f 海里</item>
|
||||
<item quantity="other">%1$.1f 海里</item>
|
||||
</plurals>
|
||||
<string name="share_image_subject">我想跟你分享一张图片</string>
|
||||
<string name="share_image_body">我觉得你可能对这张图片感兴趣。</string>
|
||||
|
||||
@@ -59,6 +59,7 @@ limitations under the License.
|
||||
</string>
|
||||
|
||||
<string name="help_data_google_play_services_title">Does OpenTracks require/use Google Play Service?</string>
|
||||
<string name="help_data_google_play_services_content">No</string>
|
||||
|
||||
<string name="help_recording_title">How does OpenTracks record data?</string>
|
||||
<string name="help_recording_content">
|
||||
@@ -581,15 +582,15 @@ limitations under the License.
|
||||
<string name="total_distance">Total distance</string>
|
||||
<plurals name="voiceDistanceKilometers">
|
||||
<item quantity="one">1 kilometer</item>
|
||||
<item quantity="other">%1$.2f kilometers</item>
|
||||
<item quantity="other">%1$.1f kilometers</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceMiles">
|
||||
<item quantity="one">1 mile</item>
|
||||
<item quantity="other">%1$.2f miles</item>
|
||||
<item quantity="other">%1$.1f miles</item>
|
||||
</plurals>
|
||||
<plurals name="voiceDistanceNauticalMiles">
|
||||
<item quantity="one">1 nautical mile</item>
|
||||
<item quantity="other">%1$.2f nautical miles</item>
|
||||
<item quantity="other">%1$.1f nautical miles</item>
|
||||
</plurals>
|
||||
<string name="average_heart_rate">Average heart rate</string>
|
||||
<string name="current_heart_rate">Current heart rate</string>
|
||||
|
||||
Reference in New Issue
Block a user