我有一个稳定的Windows Phone 8应用程序,现在已经有很长一段时间了。一些用户报告了我无法重现的奇怪行为。但是,如果这些特定设备报告DeviceNetworkInformation.IsNetworkAvailable为真,那么报告的奇怪行为将是有意义的,而实际上应用程序无法访问在线数据。
DeviceNetworkInformation.IsNetworkAvailable可靠吗?或者我应该检查其他内容以确定应用是否可以访问在线数据?
在我的情况下,两个不同的功能受到影响 - 检查产品许可证的存在,并确定地图控件是否在线。这两项检查都使用DeviceNetworkInformation.IsNetworkAvailable。
用户报告的事件似乎非常罕见,但对受影响的用户持续存在。
答案 0 :(得分:1)
DeviceNetworkInformation.IsNetworkAvailable将为true。这并不能保证Wifi将手机连接到互联网。或者在移动互联网的情况下,手机可以连接到2G网络,有时不足以连接到服务或获取大量数据。
作为一种做法,使用DeviceNetworkInformation.IsNetworkAvailable作为访问的主要检查。但不要完全依赖它。同时注册DeviceNetworkInformation.NetworkAvailabilityChanged
事件以检查代码运行时网络状态是否发生变化。
有关参考和更多详情,请查看this article