How to open app links in flutter webview?

前端 未结 3 663
谎友^
谎友^ 2021-02-03 12:45

In Flutter, I use the flutter webview plugin to launch a url like:

flutterWebviewPlugin.launch(url)

or

WebviewScaffold(
  url:          


        
相关标签:
3条回答
  • 2021-02-03 13:37

    You can use webview_flutter in pub.dev Packages

    WebView(
            initialUrl: 'https://my.url.com',
            javascriptMode: JavascriptMode.unrestricted,
            navigationDelegate: (NavigationRequest request)
            {
              if (request.url.startsWith('https://my.redirect.url.com'))
              {
                print('blocking navigation to $request}');
                _launchURL('https://my.redirect.url.com');
                return NavigationDecision.prevent;
              }
    
              print('allowing navigation to $request');
              return NavigationDecision.navigate;
            },
          )
    

    And you can launch url with url_launcher in pub.dev Packages

    _launchURL(String url) async {
    if (await canLaunch(url)) {
      await launch(url);
    } else {
      throw 'Could not launch $url';
    }}
    
    0 讨论(0)
  • 2021-02-03 13:47

    You can use web plugin like

     @override
     Widget build(BuildContext context) {
       String url = widget.url;
       return Scaffold(
        body: Center(
        child : WebviewScaffold(
          url: "https://google.com",
          appBar: new AppBar(
            title: new Text(widget.title),
          ),
          withZoom: true,
          withLocalStorage: true,
         )
       ),
     );
    }
    
    0 讨论(0)
  • 2021-02-03 13:48

    Looks like you can achieve what you need using this plugin : https://pub.dartlang.org/packages/flutter_web_view

    Listen for your redirects:

      flutterWebView.listenForRedirect("fb://profile", true);
    

    Get the value using :

    flutterWebView.onRedirect.listen((url) {
       flutterWebView.dismiss();
        //now you have the url
     });
    

    After you have the url you can use this package https://pub.dartlang.org/packages/url_launcher

    0 讨论(0)
提交回复
热议问题