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 :

Service qui s'arrete


Sujet :

Android

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2017
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Service qui s'arrete
    Bonjour à tous,

    Je dois développer une appli pour ma soeur, (je suis développeur php mais très débutant en android) et j'ai beau suivre tous les tuto je ne comprend pas pourquoi au bout de 2 heures le service s'arrète sur mon Galaxy S7 alors que sur le S4 il continue de fonctionné.

    Je me doute qui doit y avoir un problème de compatibilité mais la je bloque.

    Pour l'instant but de l'appli est de donner l'heure toutes les X secondes

    Mon 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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.didier.newtyro">
     
        <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
        <uses-permission android:name="android.permission.VIBRATE" />
        <uses-permission android:name="android.permission.WAKE_LOCK" />
        <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
     
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:roundIcon="@mipmap/ic_launcher_round"
            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>
     
            <receiver android:name=".MyBroadcastreceiver">
                <intent-filter>
                    <action android:name="android.intent.action.BOOT_COMPLETED" />
                    <action android:name="android.intent.action.PACKAGE_RESTARTED" />
                </intent-filter>
            </receiver>
     
            <service android:name="MonServiceAutoRun" android:enabled="true" android:exported="false" android:process=":ServiceProcess" android:isolatedProcess="true"/>
        </application>
    </manifest>
    MyBroadcastreceiver:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public class MyBroadcastreceiver extends BroadcastReceiver {
     
        public void onReceive(Context context, Intent intent) {
            context.startService(new Intent(context, MonServiceAutoRun.class));
        }
    }
    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
    public class MonServiceAutoRun extends Service {
     
        private Timer timer;
     
        @Override
        public IBinder onBind(Intent intent) {
            // TODO Auto-generated method stub
            return null;
        }
     
        @Override
        public void onCreate() {
            // TODO Auto-generated method stub
            super.onCreate();
            Log.w("aa", "Service Started");
     
            timer = new Timer();
            timer.scheduleAtFixedRate(new TimerTask() {
     
                @Override
                public void run() {
                    // TODO Auto-generated method stub
                    Log.w("aa", giveHeure());
                }
            }, 1000, 35000);
        }
     
        @Override
        public void onDestroy() {
            // TODO Auto-generated method stub
            super.onDestroy();
            Log.w("aa", "Service Destroyed");
            timer.cancel();
            Log.w("aa", "Timer terminated in Service");
     
        }
     
        @Override
        public int onStartCommand(Intent intent, int flags, int startId) {
            super.onStartCommand(intent, flags, startId);
            return Service.START_STICKY;
        }
     
        public String giveHeure() {
            Calendar cal = Calendar.getInstance();
            SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
            return sdf.format(cal.getTime());
        }
     
    }

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Si ton but est d'executer quelque chose à interval régulier , le service n'est pas la bonne solution.

    Il faut plutôt regarder du coté de l'alarmManager
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2017
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci, mais l'alarmmanager n'est pas adapté a mon besoin futur.

    J'ai trouvé la solution a mon problème avec des threads.

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

Discussions similaires

  1. Imprimante qui n'arrete pas d'imprimer
    Par redabadache3 dans le forum Périphériques
    Réponses: 5
    Dernier message: 13/07/2006, 13h19
  2. Imprimante qui "s'arrête"
    Par Eusebius dans le forum Matériel
    Réponses: 5
    Dernier message: 04/06/2006, 10h19
  3. Comment créer une application Service qui lance un .exe.
    Par yosthegost dans le forum Delphi
    Réponses: 5
    Dernier message: 18/05/2006, 11h37
  4. un service qui refuse de se lancer
    Par unNew dans le forum Windows XP
    Réponses: 3
    Dernier message: 22/10/2005, 01h31
  5. Obtenir le nom des services qui tournent ...
    Par vbcasimir dans le forum Administration système
    Réponses: 4
    Dernier message: 21/01/2004, 17h32

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