Saltar al contenido

¿Cómo abro un navegador web (URL) desde mi código Flutter?

Después de consultar expertos en este tema, programadores de varias ramas y maestros dimos con la solución a la interrogande y la compartimos en esta publicación.

Solución:

TL;RD

Esto ahora se implementa como complemento

const url = "https://flutter.io";
if (await canLaunch(url))
  await launch(url);
else 
  // can't launch url, there is some error
  throw "Could not launch $url";

Ejemplo completo:

import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';

void main() 
  runApp(new Scaffold(
    body: new Center(
      child: new RaisedButton(
        onPressed: _launchURL,
        child: new Text('Show Flutter homepage'),
      ),
    ),
  ));


_launchURL() async 
  const url = 'https://flutter.io';
  if (await canLaunch(url)) 
    await launch(url);
   else 
    throw 'Could not launch $url';
  

En pubspec.yaml

dependencies:
  url_launcher: ^5.7.10

Caracteres especiales:

Si el url El valor contiene espacios u otros valores que ahora están permitidos en las URL, use

Uri.encodeFull(urlString) o Uri.encodeComponent(urlString) y pase el valor resultante en su lugar.

Para aleteo:

Como se describe anteriormente por Günter Zöchbauer

Para Flutter Web:

import 'dart:html' as html;

Luego usa:

html.window.open(url, name);

Asegúrate de correr flutter clean Si el import no resuelve

Uso del complemento URL Launcher url_launcher

Para iniciar una página web, seamos una función asíncrona y hagamos lo siguiente:

launchURL(String url) async 
    if (await canLaunch(url)) 
      await launch(url);
     else 
      throw 'Could not launch $url';
    
  

Si quisiéramos que tanto iOS como Android abrieran la página web dentro de la aplicación (como WebView), agregue forceWebView: true haríamos algo como esto:

 launchURL(String url) async 
    if (await canLaunch(url)) 
      await launch(url, forceWebView: true);
     else 
      throw 'Could not launch $url';
    
 
   

Y llámalo de esta manera

onTap: () 
    const url = 'https://google.com';
    launchURL(url);

ingrese la descripción de la imagen aquí

Al final de la página puedes encontrar las interpretaciones de otros creadores, tú igualmente tienes el poder dejar el tuyo si dominas el tema.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *