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 :

[Les Services] Problème lancement service


Sujet :

Android

  1. #1
    Membre régulier Avatar de Caranille
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2013
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2013
    Messages : 117
    Points : 70
    Points
    70
    Par défaut [Les Services] Problème lancement service
    Bonjour tous le monde c'est encore moi :p,

    Voilà avec l'aide de tutoriel j'ai créer une classe Service qui se nomme KernelService et je n'arrive pas à la lancer depuis mon activity principal

    Voici le service:

    Code : 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    package com.caranille.myownpet.Kernel;
     
    import android.app.IntentService;
    import android.app.NotificationManager;
    import android.app.PendingIntent;
    import android.app.TaskStackBuilder;
    import android.content.Context;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.support.v7.app.AlertDialog;
    import android.support.v7.app.NotificationCompat;
    import android.util.Log;
    import android.widget.Toast;
     
    import com.caranille.myownpet.R;
     
    import java.util.Timer;
    import java.util.TimerTask;
     
    public class KernelService extends IntentService
    {
        private Timer timer = new Timer();
     
        static String name = "KernelService";
     
        public KernelService()
        {
            super(name);
        }
     
        @Override
        public void onCreate()
        {
            Toast.makeText(KernelService.this, "Lancement du service", Toast.LENGTH_LONG).show();
            timer.scheduleAtFixedRate(new TimerTask() {
                @Override
                public void run() {
                    Refresh();
                }
            }, 0, 1000);
        }
     
        public void Refresh()
        {
            Toast.makeText(KernelService.this, "Methode Refresh du service", Toast.LENGTH_LONG).show();
        }
     
        @Override
        protected void onHandleIntent(Intent intent)
        {
     
        }
     
        @Override
        public void onDestroy()
        {
            super.onDestroy();
        }
    }
    Et voici l'activity qui doit lancer le service:

    Code : 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    package com.caranille.myownpet;
     
    import android.Manifest;
    import android.app.Activity;
    import android.app.NotificationManager;
    import android.app.PendingIntent;
    import android.app.TaskStackBuilder;
    import android.bluetooth.BluetoothAdapter;
    import android.content.Context;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Build;
    import android.os.Bundle;
    import android.support.annotation.RequiresApi;
    import android.support.v7.app.AlertDialog;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
     
    public class MainActivity extends AppCompatActivity {
     
        private Button Resume;
        private Button Stats;
        private Button Training;
        private Button Arena;
        private TextView TrainerSerialNumber;
        private int PERMISSION_ALL = 1;
     
        //STATIC
        static Disease disease;
     
        @RequiresApi(api = Build.VERSION_CODES.M)
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
     
    	startService(new Intent(MainActivity.this, KernelService.class));
        }
     
        public void onDestroy()
        {
            super.onDestroy();
        }
    }
    Et voici le manifest
    Code : 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
    17
    18
    19
    20
    21
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.caranille.myownpet">
     
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:supportsRtl="true"
            android:theme="@style/AppTheme">
            <activity android:name=".MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
     
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <service android:name="Kernel.KernelService"></service>
        </application>
     
    </manifest>
    le problème est que je n'ai aucun Toast qui se lance ce qui veut bien dire que mon service passe à la poubelle :p

    Je ne sais pas où je me suis vautré mais si ça se trouve vous allez vous dire ha c'est tout bête il a oublié ça :p

    Merci d'avance de votre aide

    Cordialement,

  2. #2
    Membre actif Avatar de jmonga
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2014
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 175
    Points : 269
    Points
    269
    Par défaut
    j'ai ne te donnerai pas de code.

    juste question de modifier quelques truc.

    déjà pour des problèmes de lancement tu toi doit laisser le système lancé ton service.

    alors une proposition : tu hérite de la classe [Service]. ne met surtout pas de [constructeur].

    redéfini la méthode [onCreated ] comme tu la fait.

    laisse la déclaration de ton service dans le fichier de configuration [Manifest].

    dans la classe qui lance le service. y a rien à modifier.

    fait le et dit moi si tu as réussi.
    Jonathan Monga

  3. #3
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Est-ce que le chemin complet vers ta classe est bien com.caranille.myownpet.Kernel.KernelService ? (les majuscules/minuscules comptent)
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  4. #4
    Membre régulier Avatar de Caranille
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2013
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2013
    Messages : 117
    Points : 70
    Points
    70
    Par défaut
    Bonjour

    Merci de ton aide tu as bien raison de ne pas donner de code car y a que cpmme ça que on apprends.

    Oui l'adresse de mon service est bien celle ci

    Par contre j'ai un peu de mal à comprendre le raisonnement que tu m'a proposé :p dans mon code d'origine y a 200 lignes de codes que je n'ai pas mit dans mon exemple (car projet non open source :p) il n'y a donc pas juste un toast :p

    Cordialement

    Nom : Capture.PNG
Affichages : 109
Taille : 109,5 Ko

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

Discussions similaires

  1. probléme avec service WCF et les fichiers volumineux
    Par kikov dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 08/07/2014, 10h22
  2. Problème lancement Tomcat en mode service
    Par osman.amine dans le forum Tomcat et TomEE
    Réponses: 0
    Dernier message: 08/02/2010, 17h59
  3. Problème lancement exe et web service
    Par remsrock dans le forum C#
    Réponses: 9
    Dernier message: 08/08/2008, 10h59
  4. [Apache]Problème se services Apache
    Par bartmarley dans le forum Apache
    Réponses: 6
    Dernier message: 15/07/2004, 14h13
  5. [Kylix] problème web service kylix
    Par RezzA dans le forum EDI
    Réponses: 3
    Dernier message: 11/02/2003, 14h50

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