IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

PeriodicWorkRequest ne fonctionne plus après la fermeture de l'application


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de two3d
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2012
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2012
    Messages : 126
    Par défaut PeriodicWorkRequest ne fonctionne plus après la fermeture de l'application
    La doc indique bien que même si l'application est fermée, le Worker continu, et bien non.

    Une idée ?

    Je code en Kotlin.

    Voilà l'appel au Worker :

    Code Kotlin : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
            val constraints = Constraints.Builder()
                //l'appli doit avoir internet pour que le worker se lance
                .setRequiredNetworkType(NetworkType.CONNECTED)
                .build()
     
            val periodicWorkRequest = PeriodicWorkRequest
                .Builder(
                    WorkerManager::class.java,
                    15,
                    TimeUnit.MINUTES
                )
                .addTag("TAG_WORKER")
                .setConstraints(constraints)
                .build()
     
            WorkManager.getInstance(applicationContext).enqueue(periodicWorkRequest)

    Classe WorkerManager.kt :

    Code KOTLIN : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    class WorkerManager(context: Context, params: WorkerParameters) : Worker(context, params) {
     
        override fun doWork(): Result {
     
            //ici j'envoie une notification à l'utilisateur avec NotificationManager et NotificationCompat.Builder()
            // -> fonctionne parfaitement quand l'appli est ouverte
            //dès que l'appli est swipée (jetée vers le haut, pas "forcer la fermeture") : l'appli n'envoie plus de notification
     
            return success()
        }
    }

  2. #2
    Membre éprouvé Avatar de two3d
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2012
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2012
    Messages : 126
    Par défaut
    OK, en fait c'est ma variable globale, initialisée dans un companion object dans le MainActivity, qui ne passait pas une fois l'appli fermée (la var n'existait plus une fois fermée), le Worker ne semble plus trouver ce mutableMapOf que j'avais initialisé dans le MainActivity.

    Je continu mes investigations... Je vais passer mes variables à mon PeriodicWorkRequest avec Data.Builder()

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Les formulaires ne fonctionnent plus apres un export/import
    Par Altaria dans le forum Configuration
    Réponses: 3
    Dernier message: 17/09/2009, 11h58
  2. Include ne fonctionne plus après maj du serveur
    Par philou4212 dans le forum Langage
    Réponses: 16
    Dernier message: 02/08/2008, 09h05
  3. Requête ne fonctionne plus après avoir 'vider' les champs ?
    Par chapeau_melon dans le forum WinDev
    Réponses: 9
    Dernier message: 14/10/2007, 11h03
  4. Mon programme ne fonctionne plus après mise à jour de linux
    Par dybmans dans le forum GTK+ avec C & C++
    Réponses: 22
    Dernier message: 06/05/2007, 18h08
  5. function qui ne fonctionne plus après fractionnement Base
    Par Daniel MOREAU dans le forum Access
    Réponses: 1
    Dernier message: 25/05/2006, 20h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo