release: v0.1.8 — configuration Firebase saisie dans l'application

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
tuxgyverandClaude Sonnet 5 committed 2026-09-21 13:39:37 +02:00
1 parent eecad06eea
commit f33776bbb5
14 files changed
+210 -53

No files matched your search

@@ -9,6 +9,8 @@ import com.jttools.datacontrol.service.DataMonitorRestartWorker
import dagger.hilt.android.HiltAndroidApp
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.launch
import java.util.concurrent.TimeUnit
import javax.inject.Inject
@@ -17,11 +19,16 @@ import javax.inject.Inject
class DataControlApp : Application() {
@Inject lateinit var settingsRepository: SettingsRepository
@Inject lateinit var firebaseGateway: com.jttools.datacontrol.remote.FirebaseGateway
override fun onCreate() {
super.onCreate()
com.jttools.datacontrol.log.AppLog.init(this)
CoroutineScope(Dispatchers.IO).launch { settingsRepository.resetPasswordOnce() }
// La config Firebase se saisit dans l'appli : on l'applique au démarrage et à chaque modification.
CoroutineScope(Dispatchers.IO).launch {
settingsRepository.settingsFlow.map { it.firebase }.distinctUntilChanged().collect { firebaseGateway.apply(it) }
}
// Filet de sécurité : relance périodiquement DataMonitorService s'il a été tué en arrière-plan.
// enqueueUniquePeriodicWork + KEEP : sans effet si déjà planifié, donc sûr à appeler à chaque démarrage.
val request = PeriodicWorkRequestBuilder<DataMonitorRestartWorker>(15, TimeUnit.MINUTES).build()