IsNetworkavailable属性始终返回true
本文关键字:返回 true 属性 IsNetworkavailable | 更新日期: 2023-09-27 18:21:45
如何在c#代码中查找我的windows手机互联网或网络连接是否打开?对我来说,isnetworkavailable
总是返回true。
您可以尝试使用GetIsNetworkAvailable
,它会根据可用的网络接口返回结果。像这样:
bool isNetworkAvailable=NetworkInterface.GetIsNetworkAvailable();
if(!isNetworkAvailable)
{
//your code
}
唯一的查找方法是订阅事件DeviceNetworkInformation.NetworkAvailabilityChanged
。
一旦您收到该事件(保证在网络的更改时发生),您将通过查询此处的各种api来知道您是否已连接。
有一个示例代码可以准确地告诉你如何做到这一点
您也可以使用NetworkInterface.NetworkInterfaceType检查您所在的网络类型,但请小心,因为在某些情况下(例如,连接到wifi就是其中之一),调用此API可能会冻结调用线程(或UI,如果您正在运行主线程)
然而,如果你再次效仿这些例子,你应该会没事的!