[Métodos] Abrir un navegador desde Java

Abrir navegador predeterminado con Java


Para abrir un un navegador con código en java, bastará con pensar un poco y con saber:



Determinar Sistema


Muy resumidamente para determinar el sistema:

 System.getProperty("os.name");

Utilizar consola para abrir un ejecutable


  • Para abrir el navegador por defecto que tenga instalado 'windows'

    rundll32 url.dll,FileProtocolHandler + url

  • Para hacer lo propio en la termina de algunas de las distribuciones de 'linux'

    x-www-browser + url
    xdg-open + url
    sensible-browser + url

  • En sistemas operativos de la marca de la manzanita, como 'OSX'

    open + url

Ejecutar Consola con código java


Para ejecutar la consola desde java se utiliza el siguiente trozo de código donde el comando depende del sistema operativo.

 Runtime.getRuntime().exec(String command);




Abrir navegador predeterminado con código java


Para poder tener unos metodos, los cuáles abran una ventana del navegador predeterminado del sistema o uno especifico a la url que le definamos como parámetro:

 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
33
34
35
package com.zubaray;
import java.io.IOException;

public class OpenBrowser {
    private String direccion = "https://dar10comyr.blogspot.com.ar/";

    //NAVEGADOR POR DEFECTO POR SISTEMA
    public void abrirNavegadorPredeterminadorWindows(String url) throws IOException{
        Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url);
    }
    public void abrirNavegadorPredeterminadorLinux(String url) throws IOException{
        Runtime.getRuntime().exec("xdg-open " + url);
    }
    public void abrirNavegadorPredeterminadorMacOsx(String url) throws IOException{
        Runtime.getRuntime().exec("open " + url);
    }

    //NAVEGADOR POR DEFECTO GENERICO
    public void abrirNavegadorPorDefecto(String url) throws IOException{
        String osName = System.getProperty("os.name");
        if(osName.contains("Windows"))
            abrirNavegadorPredeterminadorWindows(url);
        else if(osName.contains("Linux"))
            abrirNavegadorPredeterminadorLinux(url);
        else if(osName.contains("Mac OS X"))
            abrirNavegadorPredeterminadorMacOsx(url);
        else{ //INFORMAR SISTEMA NO SOPORTADO }
    }

    // MAIN
    public static void main(String[] dar10) throws IOException {
        OpenBrowser op = new OpenBrowser();
        op.abrirNavegadorPorDefecto(op.direccion);
    }
}

No hay comentarios:

Publicar un comentario