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 :

Problème d'un débutant


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juin 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juin 2014
    Messages : 2
    Par défaut Problème d'un débutant
    Bonjour,

    J'ai créer une application pouvant lancer une url dans le navigateur android. Mais savez vous comment faire pour fermer l’application au bout de 2 seconde proprement (j'aimerai qu'elle souvre, puis lance l'url et se ferme automatiquement).

    Merci d'avance

    Code Java : 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
    import android.os.Bundle;
    import android.annotation.SuppressLint;
    import android.app.Activity;
    import android.content.Intent;
    import android.net.Uri;
    import android.os.Handler;
    import android.os.Message;
     
    public class MainActivity extends Activity{
     
        @Override
        public void onCreate(Bundle icicle){
            String url = "https://www.0000/";
            Intent i = new Intent(Intent.ACTION_VIEW);
            i.setData(Uri.parse(url));
            startActivity(i);
        }
     
    }

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Rajoute simplement un finish(); après ton startActivity.
    Je ne saisi pas l'intérêt d'une telle application par contre, ni la contrainte des "deux secondes".
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juin 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juin 2014
    Messages : 2
    Par défaut Suite pb debutant
    Merci pour ton retour,

    j'ai bien rajouté finish(); après mon startActivity. Mais l’application se ferme trop doucement (au bout de 8 secondes), et j'aimerai plutôt en 2 seconde ( besoins interne a mon entreprise )

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 273
    Par défaut
    si l'application se ferme en 8 secondes ça ne dépend pas du finish(), ça dépend plutôt de la vitesse de l’exécution de la requête, la vitesse du téléphone etc...
    donc, a part le finish tu ne peux pas faire grand chose, puisque l'application fonctionne de cette manière :
    • elle créé l'activité
    • elle exécute le code selon l'ordre dans le quel il est tapé ( dans ton cas elle exécute d'abord l'ouverture de l'url )
    • puis elle exécute le code finish() qui se trouve a la fin, donc en fin d’exécution


    si le téléphone ne peut pas exécuter cette action en deux secondes ( ou en moins de 8 ) il n'y a pas de moyen pour qu'elle le fasse plus vite selon moi

    j'essaierai de voir si on peut faire quelque chose de plus rapide que tes 8 secondes

  5. #5
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Heu....

    Pour être précis, ce n'est pas du tout le processus d'execution....


    MainActivity démarre.
    MainActivity.onCreate() est appelée
    Un Intent d'ouverture d'URL est cré (immédiate)
    L'intent est envoyé au système (immédiat)
    finish() est appelé (immédiat)
    MainActivity s'arrête immédiatement.

    Pendant l'arrêt de MainActivity le système va lancer l'URL (ou demander à l'utilisateur ce qu'il veut en faire).


    Par contre comment sais-tu qu'elle n'est pas fermée après le finish() ?

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2013
    Messages : 273
    Par défaut
    d’après son problème et vu que son code n'a apparemment aucun problème j'en déduit donc que c'est le processus qui ne s’exécute pas assez rapidement pour laisser l'application se terminer en deux secondes, puisque normalement, l'appli exécute le code puis exécute se qui se trouve a la fin et donc termine l'application, si l'appli prend plus de temps que la normale pour faire ça, c'est donc un problème de vitesse de processus, selon moi en tout cas

Discussions similaires

  1. Composant Edit, problème de syntaxe [débutant]
    Par hepha1970 dans le forum Débuter
    Réponses: 2
    Dernier message: 22/08/2007, 16h36
  2. Problème de classe (débutant)
    Par Tober dans le forum Débuter
    Réponses: 13
    Dernier message: 01/08/2007, 12h34
  3. problème d'un débutant sur un formulaire
    Par cuicuicui dans le forum Langage
    Réponses: 4
    Dernier message: 17/04/2007, 15h55
  4. Petit problème en C++ (débutant)
    Par Ryan_ dans le forum Développement 2D, 3D et Jeux
    Réponses: 4
    Dernier message: 01/11/2006, 21h26
  5. Problème de collections [débutant]
    Par jackin dans le forum Langage
    Réponses: 5
    Dernier message: 10/07/2006, 14h04

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