Release GPS2Audio v2.5.44 POI category fix

This commit is contained in:
Perplexity Computer
2026-05-30 05:42:44 +00:00
parent 18ea77b21d
commit 014e6c1bf1
100 changed files with 28584 additions and 1083 deletions
@@ -0,0 +1,41 @@
package de.waypointaudio.data
import android.content.Context
import androidx.datastore.preferences.core.edit
import androidx.datastore.preferences.core.stringPreferencesKey
import androidx.datastore.preferences.preferencesDataStore
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.map
/**
* v2.5.9 — Persistiert die vom Nutzer akzeptierte Version der
* Nutzungsbedingungen. Wird beim ersten App-Start abgefragt; eine
* neue Terms-Version (z. B. „2.5.11-terms-1") führt zur erneuten
* Anzeige des Zustimmungsdialogs.
*/
private val Context.termsDataStore by preferencesDataStore(name = "terms_settings")
object TermsVersions {
/**
* Aktuell gültige Terms-Version. Beim Bump dieser Konstante muss
* der In-App-Dialog beim nächsten Start neu zustimmen lassen.
*/
const val CURRENT = "2.5.11-terms-1"
}
class TermsStore(private val context: Context) {
private companion object {
val KEY_ACCEPTED_VERSION = stringPreferencesKey("accepted_terms_version")
}
/** Zuletzt akzeptierte Terms-Version (Leerstring = noch nie akzeptiert). */
val acceptedVersion: Flow<String> = context.termsDataStore.data
.map { it[KEY_ACCEPTED_VERSION] ?: "" }
suspend fun setAccepted(version: String) {
context.termsDataStore.edit { prefs ->
prefs[KEY_ACCEPTED_VERSION] = version
}
}
}