gpt4 book ai didi

flutter - Flutter中的“连通性”页面

转载 作者:行者123 更新时间:2023-12-03 04:14:11 26 4
gpt4 key购买 nike

我尝试使用评分最高的答案:Check whether there is an Internet connection available on Flutter app检查我是否连接了互联网,但是我需要创建一个页面,该页面显示一个文本,如果捕获返回错误,则无信号,但是我不知道该怎么做 flutter 。然后,如果没有错误,则返回正常的主菜单页面。谢谢

最佳答案

这是一个快速解决方案,但可能不是最佳解决方案:

通过您提供的链接,我们可以创建一个如下函数:

Future<bool> _checkIfConnected() async {
try {
final result = await InternetAddress.lookup('google.com');
if (result.isNotEmpty && result[0].rawAddress.isNotEmpty) {
print('connected');
}
return true;
} on SocketException catch (_) {
print('not connected');
return false;
}
}

这将检查您是否已连接,并通过bool值返回future,该值指示您的连接是否成功。

然后,在小部件上,您可以使用像这样的 future builder :

FutureBuilder(
future: _checkIfConnected(),
builder: (context, isConnected) =>
isConnected.connectionState == ConnectionState.done
? isConnected.data
? // your main menu here //
: Center(
child: Text('no signal'),
)
: CircularProgressIndicator(),
)

由于连接检查将返回将来,因此您必须在此处使用 future builder 。它只是根据您的 future 状态返回一个小部件。有关 future builder here的更多信息

关于flutter - Flutter中的“连通性”页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61647753/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com