我在Xamarin(基于C#的代码)中实现了一个检查互联网连接的功能。我通过PCL中的依赖关系服务访问了这个名为CheckInternet()
的方法。
我想要实现的是实现一种后台服务,该服务在应用程序运行时运行以继续检查互联网连接。如果有互联网连接,我的应用程序会检测项目列表并将其发送到服务器。如果不是,则项目颜色在我的屏幕上保持红色。
一旦互联网连接恢复,就会自动发送尚未发送到服务器的项目。
有人可以帮我在C#中实现这种后台服务吗?
答案 0 :(得分:2)
我想你可以看看this plugin
和此事件
/// <summary>
/// Event handler when connection changes
/// </summary>
event ConnectivityChangedEventHandler ConnectivityChanged;
CrossConnectivity.Current.ConnectivityChanged += (sender, args) =>
{
page.DisplayAlert("Connectivity Changed", "IsConnected: " + args.IsConnected.ToString(), "OK");
};
答案 1 :(得分:2)
除了@ alessandro-caliaro的回答;我相信您需要寻找的是如何在您的应用中实现后台。让它在表单项目中工作有点棘手,因为它需要特定于平台的实现。
这两篇文章详细讨论了这个概念(并说明了如何使用每个平台的后台技术实现弹性网络调用,以及在PCL级别具有共享逻辑)。