我正在使用Xam.Connectivity插件检查Internet连接。 这是我的代码
if (!CrossConnectivity.Current.IsConnected)
{
DependencyService.Get<ISQLite>().ShowSnackBar("No Internet Connection");
}
}
如果我需要每秒检查一次互联网,那么我每秒都使用Device Timer调用此代码。这段代码很好,但是我想使用任何计时器来检测何时Internet中断而不会丢失。
那么如何实现呢?
答案 0 :(得分:1)
我认为您最好使用为此实现的事件。
CrossConnectivity.Current.ConnectivityChanged += async (sender, args) =>
{
if (!args.IsConnected)
DependencyService.Get<ISQLite>().ShowSnackBar("No Internet Connection");
};
现在无论何时连接状态发生变化,都会自动通知您。
请注意,您使用的是“旧”插件。现在Xamarin.Essentials library中也捕获了此功能,其工作原理类似,但从现在开始可能是维护版本。