我叫Pablo,我正在开发Flutter应用。因此,我的应用程序从Firebase Storage获取了一些图像和音频,并且显然,如果没有Internet连接,该应用程序将不会显示图像,也不会播放音频。 我希望该应用在没有WIFI或数据的情况下向用户弹出警报;我该怎么办?
谢谢:)
答案 0 :(得分:1)
您可以通过ping Google服务器简单地使用一个功能来检查您是否具有网络连接:
conversion from 'SimilarEle::Node' to non-scalar type 'SimilarEle::Node'
requested Node curr1 = head1, curr2 = head2;
在Android中,此功能如下所示:
/system/bin/ping -c 1 8.8.8.8
在Firestore中,默认情况下启用离线持久性。因此,您可以检查用户是否从缓存或Firebase服务器读取数据。一种更优雅的方法是使用public boolean isNetworkAvailable() {
Runtime runtime = Runtime.getRuntime();
try {
Process process = runtime.exec("/system/bin/ping -c 1 8.8.8.8");
int exitValue = process.waitFor();
return (exitValue == 0);
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
return false;
}
函数。这是Android的代码:
isFromCache()
答案 1 :(得分:1)
您可以使用连接软件包https://pub.dartlang.org/packages/connectivity 这是附有https://medium.com/@aseemwangoo/internet-connectivity-in-flutter-a6b6aedf2964
的dart文件的简单教程可能重复-Check whether there is an Internet connection available on Flutter app
答案 2 :(得分:0)
要显示警报部件,可以使用RFlutter警报库。它是Flutter的易于自定义且易于使用的警报/弹出对话框库。
示例代码:
Alert(context: context, title: "RFLUTTER", desc: "Flutter is awesome.").show();
*我是RFlutter Alert的开发人员之一。