Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
b4996f8
Translated using Weblate (Japanese)
weblate Feb 6, 2026
b3491f8
Translated using Weblate (Japanese)
davecraig Feb 6, 2026
f6b3348
Translated using Weblate (Italian)
weblate Feb 6, 2026
5de663b
Translated using Weblate (Italian)
davecraig Feb 6, 2026
bfe52a2
Translated using Weblate (Persian)
davecraig Feb 6, 2026
79c2192
Translated using Weblate (Portuguese)
weblate Feb 6, 2026
a427b48
Translated using Weblate (Portuguese)
davecraig Feb 6, 2026
c1a5ecf
Translated using Weblate (Ukrainian)
davecraig Feb 7, 2026
bba6e65
Translated using Weblate (Swedish)
weblate Feb 6, 2026
a4241f3
Translated using Weblate (Swedish)
davecraig Feb 6, 2026
ea9b3bc
Translated using Weblate (French (Canada))
weblate Feb 6, 2026
3cb54fd
Translated using Weblate (French (Canada))
davecraig Feb 6, 2026
a3258dc
Translated using Weblate (Greek)
weblate Feb 6, 2026
d0d485c
Translated using Weblate (Greek)
davecraig Feb 6, 2026
2d506be
Translated using Weblate (English (United Kingdom))
davecraig Feb 6, 2026
f2ec8bd
Translated using Weblate (Portuguese (Brazil))
weblate Feb 6, 2026
7fd49bd
Translated using Weblate (Portuguese (Brazil))
davecraig Feb 6, 2026
9dfb57c
Translated using Weblate (Danish)
weblate Feb 6, 2026
d9a17fe
Translated using Weblate (Danish)
davecraig Feb 6, 2026
d9cf135
Translated using Weblate (Polish)
davecraig Feb 6, 2026
7a1969a
Translated using Weblate (Icelandic)
davecraig Feb 6, 2026
22fe379
Translated using Weblate (Norwegian Bokmål)
weblate Feb 6, 2026
9562c45
Translated using Weblate (Norwegian Bokmål)
davecraig Feb 6, 2026
482f161
Translated using Weblate (Dutch)
weblate Feb 6, 2026
88539c7
Translated using Weblate (Dutch)
davecraig Feb 6, 2026
7805481
Translated using Weblate (Finnish)
weblate Feb 6, 2026
7fcad5b
Translated using Weblate (Finnish)
davecraig Feb 6, 2026
354b058
Translated using Weblate (Spanish)
weblate Feb 6, 2026
f9832b6
Translated using Weblate (Spanish)
davecraig Feb 6, 2026
4dd5afd
Translated using Weblate (Russian)
davecraig Feb 6, 2026
66a11d5
Translated using Weblate (Arabic (Egyptian))
davecraig Feb 6, 2026
9001837
Translated using Weblate (French)
weblate Feb 6, 2026
fbb2dbe
Translated using Weblate (French)
davecraig Feb 6, 2026
4f3ed64
Translated using Weblate (German)
weblate Feb 6, 2026
0014248
Translated using Weblate (German)
davecraig Feb 6, 2026
7e979ea
Move to new API for limiting languages used in build
davecraig Feb 7, 2026
4ad5180
Suppress incorrect warning so that no-one is tempted to change the code
davecraig Feb 7, 2026
81014fd
Disable firebase on internal play store app tests
davecraig Feb 7, 2026
6c66c54
Revert "Move to new API for limiting languages used in build"
davecraig Feb 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 19 additions & 10 deletions app/src/main/java/org/scottishtecharmy/soundscape/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import android.content.SharedPreferences
import android.net.Uri
import android.os.Build
import android.os.Bundle
import android.os.StrictMode
import android.provider.Settings
import android.text.Html
import android.util.Log
import android.view.View
Expand All @@ -24,6 +24,8 @@ import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
import androidx.core.content.ContextCompat
import androidx.core.content.FileProvider
import androidx.core.content.edit
import androidx.core.net.toUri
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleEventObserver
Expand All @@ -36,9 +38,9 @@ import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch
import org.scottishtecharmy.soundscape.audio.AudioTour
import org.scottishtecharmy.soundscape.geoengine.utils.ResourceMapper
import org.scottishtecharmy.soundscape.geoengine.utils.geocoders.AndroidGeocoder
import org.scottishtecharmy.soundscape.audio.AudioTour
import org.scottishtecharmy.soundscape.screens.home.HomeRoutes
import org.scottishtecharmy.soundscape.screens.home.HomeScreen
import org.scottishtecharmy.soundscape.screens.home.Navigator
Expand All @@ -51,9 +53,6 @@ import org.scottishtecharmy.soundscape.utils.processMaps
import java.io.File
import java.util.Locale
import javax.inject.Inject
import androidx.core.net.toUri
import androidx.core.content.edit
import org.scottishtecharmy.soundscape.BuildConfig

data class ThemeState(
val hintsEnabled: Boolean = false,
Expand Down Expand Up @@ -82,11 +81,6 @@ class MainActivity : AppCompatActivity() {
@Inject
lateinit var audioTour : AudioTour

init {
// Use dummy analytics if we don't have play services or if build is configured for it
Analytics.getInstance(BuildConfig.DUMMY_ANALYTICS || !hasPlayServices(this))
}

// we need notification permission to be able to display a notification for the foreground service
private val notificationPermissionLauncher =
registerForActivityResult(
Expand Down Expand Up @@ -239,6 +233,21 @@ class MainActivity : AppCompatActivity() {
// .build()
// )

// Use dummy analytics if any of the following is true:
//
// 1. DUMMY_ANALYTICS is set meaning that we're not a release build
// 2. We don't have Google Play Services
// 3. We're running in Test Lab which is what happens when Google tests app releases. The
// test for this is mentioned here:
// https://firebase.google.com/docs/test-lab/android/android-studio#modify_instrumented_test_behavior_for
//
val testLabSetting: String? = Settings.System.getString(contentResolver, "firebase.test.lab")
Analytics.getInstance(
BuildConfig.DUMMY_ANALYTICS ||
!hasPlayServices(this) ||
"true" == testLabSetting)


if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
val timeNow = System.currentTimeMillis()
installSplashScreen()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ object StorageUtils {

val sm = context.getSystemService(Context.STORAGE_SERVICE) as StorageManager
for (dir in externalFilesDirs) {
@Suppress("SENSELESS_COMPARISON")
if (dir == null) {
// dir can be null if a storage device is not mounted, etc.
continue
Expand Down
36 changes: 24 additions & 12 deletions app/src/main/res/values-arz/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-da/strings.xml

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions app/src/main/res/values-de/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-el/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-en-rGB/strings.xml

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions app/src/main/res/values-es/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-fa/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-fi/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-fr-rCA/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-fr/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-is/strings.xml

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions app/src/main/res/values-it/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-ja/strings.xml

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions app/src/main/res/values-nb/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-nl/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-pl/strings.xml

Large diffs are not rendered by default.

34 changes: 23 additions & 11 deletions app/src/main/res/values-pt-rBR/strings.xml

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions app/src/main/res/values-pt/strings.xml

Large diffs are not rendered by default.

38 changes: 25 additions & 13 deletions app/src/main/res/values-ru/strings.xml

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions app/src/main/res/values-sv/strings.xml

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions app/src/main/res/values-uk/strings.xml

Large diffs are not rendered by default.