Como fazer um ping em conexões de rede nos dispositivos J2ME

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (2)  (0)

Aprenda a fazer um ping também em dispostivos móveis.

A ilustração abaixo dá um ping no servidor com um intervalo de 1 minuto.

import java.io.*;
import javax.microedition.midlet.*;
import javax.microedition.io.*;
import javax.microedition.lcdui.*;

public class pingMIDLET extends MIDlet {
    private Display display;
    private String url = "http://server";
    private Form form;
    private Command exit;
    private Command stop;
    private Timer timer;
    private RunTimerTask tt;
    private int count = 0;
    boolean isPing = false;
    
    public pingMIDLET() {
        display = Display.getDisplay(this);
        form = new Form("Ping");
        exit = new Command("Exit", Command.EXIT, 1);
        stop= new Command("Parar", Command.STOP, 2);
    }
    
    public void startApp() {
        form.addCommand(exit);
        form.addCommand(stop);
        form.setCommandListener(this);
        
        // Repetindo a cada 1 minuto
        timer = new Timer();
        tt = new RunTimerTask();
        timer.schedule(tt,01000*60);
        if(isPing) {
            timer.cancel();
        }
        display.setCurrent(form);
    }
    
    public void pauseApp() { }
    public void destroyApp(boolean unconditional) { }
    
    public void commandAction(Command c, Displayable d) {
        if (c == stop) {
            timer.cancel();
        else if (c == exit) {
            destroyApp(false);
            notifyDestroyed();
        }
    }
    
        /*--------------------------------------------------
         * Classe RunTimerTask – Executando a tarefa
         *-------------------------------------------------*/
    
    private class RunTimerTask extends TimerTask {
        public final void run() {
            
            HttpConnection c = null;
            OutputStream os = null;
            InputStream is = null;
            int ch;
            StringBuffer b = new StringBuffer();
            try {
                c = (HttpConnection)Connector.open(url);
                
                // Configurando o request method e cabeçalhos
                c.setRequestMethod(HttpConnection.POST);
                c.setRequestProperty(
                   "If-Modified-Since","7 Sep 2005 19:43:31 GMT");
                
                c.setRequestProperty(
                   "User-Agent","Profile/MIDP-1.0 Configuration/CLDC-1.0");
                
                c.setRequestProperty("Content-Language""en-US");
                
                // Otendo  a saída
                os = c.openOutputStream();
                os.write("Ping".getBytes());
                os.flush();
                
                is = c.openInputStream();
                while ((ch = is.read()) != -1) {
                    b.append((char)ch);
                }
                isPing = true;
                form.append("ping - Sucesso");
            catch(IOException e) {
                isPing = false;
                form.append("Pinging.....");
            finally {
                is.close();
                os.close();
                c.close();
            }
        }
    }
}

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?