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 :

Tutoriel Auto Start


Sujet :

Android

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Par défaut Tutoriel Auto Start
    Bonjour
    Après avoir bien galérer et chercher un peu partout je suis enfin arriver à faire un autoStart.
    Voici donc un petit tutoriel Android :

    Ce programme démarre automatiquement au démarrage du téléphone , c'est à dire après l'avoir éteint

    Il faut 2 codes
    1. Une appli
    2. Un BroadcastReceiver


    Voici le code du BroadcastReceiver

    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
    public class BackgroundServiceSupertec extends BroadcastReceiver{
     
     
    	@Override
    	public void onReceive(Context context, Intent intent) {
    		// TODO Auto-generated method stub
    		Toast.makeText(context, "Test dans quelques secondes",
    		Toast.LENGTH_LONG).show();
    		// Vibrate the mobile phone
    		Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
    		vibrator.vibrate(2000);
     
    		intent = new Intent(context, SupService.class);
    		intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    		context.startActivity(intent);
    	}
     
     
     
    }

    Voici le code de l'activité Test :

    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
    public class SupService extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
     
            Button btTest = (Button) findViewById(R.id.button1);
            btTest.setOnClickListener(new Button.OnClickListener(){
            	public void onClick(View view) {
            		Log.i("Test", "Bouton Test");
     
            	}
            });
        }
     
    }

    Et surtout le MANIFEST qui fait tout :

    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
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.service"
          android:versionCode="1"
          android:versionName="1.0">
        <uses-sdk android:minSdkVersion="8" />
        <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
        <uses-permission android:name="android.permission.VIBRATE"></uses-permission>
     
     
        <application android:icon="@drawable/icon" android:label="@string/app_name">
            <activity android:name=".SupService"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <receiver android:enabled="true" android:name="BackgroundServiceSupertec">
            	<intent-filter>
                    <action android:name="android.intent.action.BOOT_COMPLETED" />
                    <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
     
            </receiver>
     
        </application>
    </manifest>

    J’espère que cela rendra service

  2. #2
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    Merci de ta contribution.
    Je viens de l'ajouter dans le post pour la FAQ Android. Ca sera intégré lors de la prochaine mise à jours

    http://www.developpez.net/forums/d90...d/#post5855277

  3. #3
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut
    Bonjour,
    J'ai essayé le code et j'ai obtenu une exception. La ligne 17 correspond à cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     btTest.setOnClickListener(new Button.OnClickListener(){
    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
    03-21 12:34:49.137: ERROR/AndroidRuntime(254): Uncaught handler: thread main exiting due to uncaught exception
    03-21 12:34:49.167: ERROR/AndroidRuntime(254): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.formation.auto_start/com.formation.auto_start.SupService}: java.lang.NullPointerException
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.app.ActivityThread.access$2200(ActivityThread.java:119)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.os.Handler.dispatchMessage(Handler.java:99)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.os.Looper.loop(Looper.java:123)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.app.ActivityThread.main(ActivityThread.java:4363)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at java.lang.reflect.Method.invokeNative(Native Method)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at java.lang.reflect.Method.invoke(Method.java:521)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at dalvik.system.NativeStart.main(Native Method)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254): Caused by: java.lang.NullPointerException
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at com.formation.auto_start.SupService.onCreate(SupService.java:17)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    03-21 12:34:49.167: ERROR/AndroidRuntime(254):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)

  4. #4
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    J'imagine que vous avez bien pensé à mettre le "button1" sur votre layout xml pour l'activité ?

  5. #5
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut
    oui bien sûr si non je ne peux pas l'exécuter. Je n'ai pas des fautes dans le code.

  6. #6
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    tu peux nous mettre ici le code complet de ton activity principale ?
    Merci.

  7. #7
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut
    Le problème est résolu. J'ai recommencé de nouveau et l'erreur disparaît . Mais est ce que vous pouvez m'expliquer fonctionnement de ce code et l'utilité de BroadcastReceiver. J'ai pensé qu'au début j'aurais l'affichage d'un Toast mais directement à l'exécution du code j'aurais l'affichage de la classe SupService.

    Merci bien de me répondre je suis encore débutante en android et je veux comprendre fonctionnalité de ce code.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Par défaut
    Attention, pour afficher un Toast il faut un Context ce qui n'est pas le cas du Broadcast receiver

  9. #9
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut
    Est ce que le contenu de la classe Broadcast receiver ne sera plus affichée. Son rôle juste de mettre l'autre classe s'exécute dès le démarrage du mobile???
    Ce que j'ai compris est-il correct?

  10. #10
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut éliminer fonctionnement de Broadcast Receiver
    Bonjour,
    Cette application s'affiche toujours dès le démarrage de n'importe quelle application.
    Comment éliminer de démarrage???

  11. #11
    Nouveau candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 2
    Par défaut
    Bonjour,

    Sur le même principe, je cherche à lancer automatiquement une application existante (ex: Music, Browser...) au démarrage du téléphone, sans passer par l'écran de dévérouillage.

    Quelqu'un aurait-il une solution ?

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Par défaut
    Il est normal que l'application démarrage systématiquement puis que c'est le but même du programme.

    Pour l’empécher, il faut désinstaller l'installation

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Par défaut
    Citation Envoyé par herveldfr Voir le message
    Bonjour,

    Sur le même principe, je cherche à lancer automatiquement une application existante (ex: Music, Browser...) au démarrage du téléphone, sans passer par l'écran de dévérouillage.

    Quelqu'un aurait-il une solution ?
    Il suffit d'appeler le service dans l'autoRun

  14. #14
    Nouveau candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 2
    Par défaut
    Citation Envoyé par LordDaedalus Voir le message
    Il suffit d'appeler le service dans l'autoRun
    Merci pour votre réponse, mais étant novice en développement sous Android (je travaille habituellement sous Linux), je ne maîtrise pas encore cet environnement...

    Existe-t-il une application Autorun précompilée ou à défaut peut-on utiliser AppInventor en ligne pour la créer ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 30/03/2013, 21h26
  2. Auto start Tablette
    Par manbar dans le forum Android
    Réponses: 4
    Dernier message: 23/10/2012, 14h09
  3. [ZF 1.11] session has already been started by session.auto-start or session_star
    Par absot dans le forum Zend Framework
    Réponses: 5
    Dernier message: 16/05/2012, 23h59
  4. [ZF 1.8] Tutoriel: Getting Started with Zend Framework
    Par darthmower dans le forum Zend Framework
    Réponses: 2
    Dernier message: 17/07/2009, 09h41
  5. List de auto-start Apps
    Par mohfa2001 dans le forum Langage
    Réponses: 4
    Dernier message: 15/03/2009, 05h43

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