如何在 Flutter 中启动 URL?
Posted
技术标签:
【中文标题】如何在 Flutter 中启动 URL?【英文标题】:How to launch URL in Flutter? 【发布时间】:2020-01-21 12:11:28 【问题描述】:注意:我已经在 *** 上搜索了很多关于这个问题的时间并阅读了所有类似的问题
我正在制作 Flutter 应用,我想在按钮点击时启动一个 URL(基于 Canvas)。
一切都很好,直到我使用了“url_launcher”。
我正在使用 Flutter 1.13.6(最新)。
下面是我正在使用的重定向功能。
import 'package:url_launcher/url_launcher.dart' as URLLaucher;
abstract class URL
static launchURL(String url) async
url = Uri.encodeFull(url);
if (await URLLaucher.canLaunch(url))
await URLLaucher.launch(url);
else
throw 'Unknown error, can\'t launch the URL. Холбоост нэвтрэхэд алдаа гарлаа';
这是我运行“flutter run”命令时出现的错误日志。
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':url_launcher'.
> Could not resolve all artifacts for configuration ':url_launcher:classpath'.
> Could not download gradle.jar (com.android.tools.build:gradle:3.4.2)
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.4.2/gradle-3.4.2.jar'.
> Read timed out
> Could not download builder.jar (com.android.tools.build:builder:3.4.2)
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.4.2/builder-3.4.2.jar'.
> Premature end of Content-Length delimited message body (expected: 31038805; received: 2359280
> Failed to notify project evaluation listener.
> Could not get unknown property 'android' for project ':url_launcher' of type org.gradle.api.Project.
> Could not find method implementation() for arguments [project ':url_launcher_web'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
> Could not find method implementation() for arguments [project ':url_launcher_macos'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
【问题讨论】:
您可以尝试访问this url 吗?您似乎无法下载成绩文件 你的url_launcher版本和flutter版本是多少 ~sdk: ">=2.3.0 【参考方案1】:在向 pubspec.yaml 添加内容后进行热重启时会发生这种情况 - 只需关闭应用并重新安装即可
【讨论】:
【参考方案2】:我有同样的错误。
所以我将颤振升级到v1.12.13
并使用url_launcher5.3.0
并且它起作用了。
【讨论】:
这里也一样,反正是你【参考方案3】:pubspec.yaml
url_launcher: ^6.0.6
main.dart
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';
const _url = 'https://flutter.dev';
void main() => runApp(
const MaterialApp(
home: Material(
child: Center(
// ignore: deprecated_member_use
child: RaisedButton(
onPressed: _launchURL,
child: Text('Bappa\'s apps in playstore'),
),
),
),
),
);
void _launchURL() async
launch("https://play.google.com/store/search?q=pub%3ABAPPA%20SAIKH&c=apps" );
【讨论】:
以上是关于如何在 Flutter 中启动 URL?的主要内容,如果未能解决你的问题,请参考以下文章
(颤振)如果没有互联网连接,如何启动静态 html 页面而不是 URL?
如何使用 onGenerateRoute 在 URL 中显示 Flutter Web 路由名称?