Autore Topic: Ping  (Letto 1078 volte)

Offline jaco94++

  • Nuovo arrivato
  • *
  • Post: 22
  • Respect: 0
    • Github
    • Mostra profilo
  • Dispositivo Android:
    Nexus 4
  • Play Store ID:
    JDL
  • Sistema operativo:
    Fedora
Ping
« il: 30 Dicembre 2011, 20:24:27 CET »
0
Salve sono nuovo di qui  :-) ! sto progettando un applicazione per android per l'analisi di rete solo che ho un problema con eseguire un semplice ping ! Ho provato ad usare isReachable ma non funziona correttamente e sinceramente non capisco il perchè  :'( cosi ho provato ad usare l'utility ping del sistema ma non riesco ad eseguirla dal mio programma ho provato ad eseguire il comando ls e funziona perfettamente provo ad usare ping e non succede niente ... ho per caso bisogno di qualche permesso ?
« Ultima modifica: 30 Dicembre 2011, 21:15:33 CET da jaco94++ »

Offline alexAndroid

  • Utente normale
  • ***
  • Post: 185
  • Respect: +27
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Giò
  • Sistema operativo:
    Ubuntu 11.10; Windows XP
Re:Ping
« Risposta #1 il: 09 Gennaio 2012, 17:04:40 CET »
0
Dipende come lo stai provando: stai utilizzando l'emulatore AVD?
Sei stato aiutato oppure il tuo problema è stato risolto? Allora premi il tasto THANKS E' un modo utile e carino per ringraziare chi ti è stato di aiuto.

Offline jaco94++

  • Nuovo arrivato
  • *
  • Post: 22
  • Respect: 0
    • Github
    • Mostra profilo
  • Dispositivo Android:
    Nexus 4
  • Play Store ID:
    JDL
  • Sistema operativo:
    Fedora
Re:Ping
« Risposta #2 il: 10 Gennaio 2012, 11:19:02 CET »
0
Sia sull'emulatore sia sul mio cellulare samsung galaxy ace ma non va in entrambi i casi il programma non viene richiamato! :-(

Offline alexAndroid

  • Utente normale
  • ***
  • Post: 185
  • Respect: +27
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Giò
  • Sistema operativo:
    Ubuntu 11.10; Windows XP
Re:Ping
« Risposta #3 il: 10 Gennaio 2012, 11:22:12 CET »
+1
Perchè da esperienza personale con l'Emulatore il ping funziona solo per 127.0.0.1
Mentre con altri telefoni (Galaxy Next e LG Optimus Life) funziona correttamente.
Puoi postare il codice se vuoi. Magari si può vedere cosa c'è che non và.
Sei stato aiutato oppure il tuo problema è stato risolto? Allora premi il tasto THANKS E' un modo utile e carino per ringraziare chi ti è stato di aiuto.

Offline jaco94++

  • Nuovo arrivato
  • *
  • Post: 22
  • Respect: 0
    • Github
    • Mostra profilo
  • Dispositivo Android:
    Nexus 4
  • Play Store ID:
    JDL
  • Sistema operativo:
    Fedora
Re:Ping
« Risposta #4 il: 10 Gennaio 2012, 18:11:55 CET »
0
Ecco il codice  :-)  :

Codice (Java): [Seleziona]
        try
                                {
                            String Fin="";
                                        Process proc = new ProcessBuilder("ping","127.0.0.1 ").start();
                                        try
                                        {
                                                proc.waitFor();
                                        }
                                        catch(InterruptedException e)
                                        {
                                                TextBox1.setText(e.getStackTrace().toString());
                                        }
                                        BufferedInputStream stdout = new BufferedInputStream(proc.getInputStream());
                                        byte[] contents = new byte[1024*3];
                                        int i;
                                        while((i=stdout.read(contents))!=-1)
                                        {
                                                Fin= new String(contents,0,i);
                                        }
                                        TextBox1.setText(Fin);
                                }
                                catch (IOException e)
                                {
                                        TextBox1.setText(e.getStackTrace().toString());
                                }

Offline alexAndroid

  • Utente normale
  • ***
  • Post: 185
  • Respect: +27
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Giò
  • Sistema operativo:
    Ubuntu 11.10; Windows XP
Re:Ping
« Risposta #5 il: 11 Gennaio 2012, 10:05:20 CET »
+1
Io ho un metodo Ping che richiamo quando mi serve e funziona.
Fammi sapere come ti va ;)
Codice (Java): [Seleziona]
/** Metodo per calcolare il ping effettivo in millisecondi. Sull'emulatore funziona solo
      * su 127.0.0.1
      * @param ip Indirizzo IP dell'host da pingare
      * @return Il numero di millisecondi trascorsi oppure Long.MAX_VALUE altrimenti.
      */

     public static long ftpPing2(String ip) {
         try {
             long start = System.currentTimeMillis();
             Process p = Runtime.getRuntime().exec("ping -c 1 " + ip);
             p.waitFor();
             int exit = p.exitValue();
             if (exit == 0)
                 return System.currentTimeMillis() - start; //Ritorna il tempo in millisecondi
             Log.i(APPNAME, "PING EXIT CODE: " + exit);
         } catch (IOException e1) {
             e1.printStackTrace();
             Log.d(APPNAME, "Errore in exec ping");
         } catch(InterruptedException e2) {
                 e2.printStackTrace();
                 Log.d(APPNAME, "Errore in Process waitFor");
         }
         return Long.MAX_VALUE;
     }
Sei stato aiutato oppure il tuo problema è stato risolto? Allora premi il tasto THANKS E' un modo utile e carino per ringraziare chi ti è stato di aiuto.

Offline jaco94++

  • Nuovo arrivato
  • *
  • Post: 22
  • Respect: 0
    • Github
    • Mostra profilo
  • Dispositivo Android:
    Nexus 4
  • Play Store ID:
    JDL
  • Sistema operativo:
    Fedora
Re:Ping
« Risposta #6 il: 11 Gennaio 2012, 15:43:06 CET »
0
Ora funziona grazie  :-)