How to make my Program access the net? [closed]

-5

I actually want to create a program that tells me that my internet connection has crashed, but I want to create it. I have a little notion in java, poo, but I wanted to know where to start.

Do I have to import any tool that accesses the net? S if the program can access the net?

Loose example here just to understand:

if (Se o acesso == true) {
    System.out.print("não faça nada");
} else {
    Comando para apitar um alarme etc???
}
    
asked by anonymous 24.11.2016 / 18:21

1 answer

2

Try this:

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

public class ApitaQuandoCaiInternet {

    // Método que verifica se a internet está conectada.
    // Para descobrir se a internet está conectada, ele tenta conectar no google.
    public static boolean internetOk() {
        String site = "http://www.google.com";
        URL url;

        // Cria uma URL para o site do google.
        try {
            url = new URL(site);
        } catch (MalformedURLException e) {
            // Este erro não deve ocorrer nunca, pois a URL informada é sabidamente
            // bem formada. Assim sendo, lança o AssertionError que é o erro para
            // representar situações inesperadas que acredita(va)-se que nunca ocorreriam.
            throw new AssertionError(e);
        }

        HttpURLConnection c = null;
        try {

            // Abre uma conexão com o site do google.
            c = (HttpURLConnection) url.openConnection();
            c.setUseCaches(false);
            c.setRequestMethod("GET");
            c.connect();

            // Força o download de alguma resposta ao solicitar o código de status.
            // Ver https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
            // Como o propósito é apenas conectar ou não, não precisamos fazer
            // nada com o código.
            int status = c.getResponseCode();

            // Conseguiu fazer o download, estamos online.
            return true;

        // Erro no download. Estamos offline.
        } catch (IOException x) {
            return false;

        // Fecha a conexão ao final, independente do resultado.
        } finally {
            if (c != null) c.disconnect();
        }
    }

    // Método que faz um barulho.
    public static void beep() {
        java.awt.Toolkit.getDefaultToolkit().beep();
    }

    public static void main(String[] args) {
        while (true) {
            // Se a internet tiver caído, faz um barulho.
            if (!internetOk()) beep();

            // Espera 10 segundos e tenta de novo depois.
            try {
                Thread.sleep(10000);
            } catch (InterruptedException e) {
                return;
            }
        }
    }
}
    
24.11.2016 / 18:41