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 de compilation


Sujet :

Android

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Problème de compilation
    Bonjour, je développe actuellement une application pour smartphone qui est censé récupérer les données sur une site web mais cela ne fonctionne pas. L'application s’arrête dés qu'elle doit ce connecté au site. J'ai pourtant bien demander la permission dans le Manifest. Voici le code qui pose problème :
    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
    public static ArrayList<Match> recup() throws Exception {
        	boolean b = false ;
        	ArrayList<Match> lst = new ArrayList<Match>();
            URL oracle = new URL("http://csgolounge.com/");//Scan
            URLConnection yc = oracle.openConnection();
            BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
            String inputLine;//Ligne de code
            while ((inputLine = in.readLine()) != null) 
                if(inputLine.contains("matchmain") || b){
                	Match m = new Match();
                	while(!(inputLine = in.readLine()).contains("whenm")){
     
                	}
                	m.time = cut(inputLine, 19);
                	while(!(inputLine = in.readLine()).contains("eventm")){
     
                	}
                	m.comp = cut(inputLine, 20);
                	while(!(inputLine = in.readLine()).contains("teamtext")){
     
                	}
                	m.t1 = cut(inputLine, 31);
                	in.readLine();
                	while(!(inputLine = in.readLine()).contains("teamtext")){
     
                	}
                	m.t2 = cut(inputLine, 31);
                	lst.add(m);
                }
            in.close();
            return lst;
        }

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Défini "s'arrête". L'application crashe? Elle givre? Il y a quoi dans le logcat?

  3. #3
    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
    Toute requête réseau doit être exécutée dans un thread à part du thread UI. Par exemple avec une asynctask
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Mon GSM me dit que l'application s'est arreter et j'exécute déja cette fonction dans un try catch. Dois-je faire autre chose?

  5. #5
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Et il y a quoi dans le logcat?

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Il me met :
    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
    03-14 14:19:48.670: A/NetworkStats(76): problem reading network stats
    03-14 14:19:48.670: A/NetworkStats(76): java.lang.IllegalStateException: problem parsing idx 1
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:300)
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.server.NetworkManagementService.getNetworkStatsUidDetail(NetworkManagementService.java:1282)
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.server.net.NetworkStatsService.performPollLocked(NetworkStatsService.java:831)
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.server.net.NetworkStatsService.updateIfacesLocked(NetworkStatsService.java:743)
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.server.net.NetworkStatsService.updateIfaces(NetworkStatsService.java:721)
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.server.net.NetworkStatsService.access$000(NetworkStatsService.java:128)
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.server.net.NetworkStatsService$8.handleMessage(NetworkStatsService.java:1633)
    03-14 14:19:48.670: A/NetworkStats(76): 	at android.os.Handler.dispatchMessage(Handler.java:95)
    03-14 14:19:48.670: A/NetworkStats(76): 	at android.os.Looper.loop(Looper.java:137)
    03-14 14:19:48.670: A/NetworkStats(76): 	at android.os.HandlerThread.run(HandlerThread.java:60)
    03-14 14:19:48.670: A/NetworkStats(76): Caused by: java.io.FileNotFoundException: /proc/net/xt_qtaguid/stats: open failed: ENOENT (No such file or directory)
    03-14 14:19:48.670: A/NetworkStats(76): 	at libcore.io.IoBridge.open(IoBridge.java:406)
    03-14 14:19:48.670: A/NetworkStats(76): 	at java.io.FileInputStream.<init>(FileInputStream.java:78)
    03-14 14:19:48.670: A/NetworkStats(76): 	at com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:269)
    03-14 14:19:48.670: A/NetworkStats(76): 	... 9 more
    03-14 14:19:48.670: A/NetworkStats(76): Caused by: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
    03-14 14:19:48.670: A/NetworkStats(76): 	at libcore.io.Posix.open(Native Method)
    03-14 14:19:48.670: A/NetworkStats(76): 	at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
    03-14 14:19:48.670: A/NetworkStats(76): 	at libcore.io.IoBridge.open(IoBridge.java:390)
    03-14 14:19:48.670: A/NetworkStats(76): 	... 11 more

  7. #7
    Expert éminent

    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
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    j'ai un soucis....

    On dirait que tout se passe ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    at com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:269)
    Comme l'indique l'exception....

    Donc... fichier NetworkStatsFactory.java, ligne 269 dans la fonction "readNetworkStatsDetail" de la classe "com.android.internal.net.NetworkStatsFactory"

    Mais ... "com.android" me semble bizarre... d'après les "règles" de package java, ça voudrait dire que le code appartient à une entité commerciale (com) "android"...
    Ce package existe (com.android.internal.os ... etc...) mais je ne connais pas de "com.android.internal.net". Et une recherche dans la doc retourne 0 résultat.

    Elle vient d'où cette classe ?
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    nicroman: Cette exception arrive lorsque l'on fait tourner une ice cream sandwich sur une kernel qui ne possède pas le module netfilter "xt_qtaguid". En gros ce message peut être ignoré. Du coup ça veux dire je pense que l'application de jimmy s'est arrêtée sans le moindre message.

  9. #9
    Expert éminent

    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
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Oh purée... oui, ca y'est je me souviens les Samsung avaient le problème pendant un moment....


    Mais une application qui "s'arrête" ça veut dire une exception non catchée. Donc il doit forcément y avoir un truc dans le logcat....
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Mais cette fonction tourne dans un try catch

  11. #11
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Ben c'est que l'exception est lancée ailleurs ou que c'est une exception que le catch n'attrape pas. Au passage sans code ni message d'erreur, on ne peux que vaguement deviner

  12. #12
    Expert éminent

    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
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    si le système affiche "l'application XXXX s'est arrêtée"... cela veut dire qu'une exception non catchée s'est produite.

    Et dans ce cas, celle-ci est loguée.

    Pour le cas du try/catch reste à savoir ce qui est fait dans le catch. J'ai vu pas mal de tutos ou les gars n'avaient pas compris à quoi servaient les exceptions, et faisaient juste du try/catch pour "que ça compile"

    Limite ton logcat à ton application. Et envoie nous tout après un "close" de l'application.
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

Discussions similaires

  1. problème de compilation sous visual C++
    Par fabmili dans le forum MFC
    Réponses: 4
    Dernier message: 08/02/2004, 19h52
  2. problème de compil devc++ socket
    Par stefdem dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 11/12/2003, 11h33
  3. Réponses: 1
    Dernier message: 29/10/2003, 12h16
  4. Problème de compilation de la DLL du XMLRad
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/04/2003, 16h46
  5. Réponses: 1
    Dernier message: 27/05/2002, 01h44

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