【问题标题】:Windows 10 UWP - How to check if Cellular data is enabled?Windows 10 UWP - 如何检查蜂窝数据是否已启用?
【发布时间】:2017-04-19 23:38:59
【问题描述】:

在 Windows 10 UWP 中,如何检查是否启用了蜂窝数据?

我不想知道我当前的互联网连接是什么类型 (NetworkInformation.GetInternetConnectionProfile()),我想知道蜂窝数据无线电是否已激活。

我认为在 Windows 8 中,我们可以使用 DeviceNetworkInformation.IsCellularDataEnabled 来实现,是否有适用于 Windows 10 UWP 的等效项?

谢谢。

【问题讨论】:

    标签: windows-10-universal cellular-network


    【解决方案1】:

    您可以使用 NetworkInformation 类检查这一点 https://msdn.microsoft.com/en-us/library/windows.networking.connectivity.networkinformation.getinternetconnectionprofile.aspx

    ConnectionProfile networkProfile= NetworkInformation.GetInternetConnectionProfile();
    if (networkProfile.IsWwanConnectionProfile)
    {
        WwanDataClass connection = networkProfile.WwanConnectionProfileDetails.GetCurrentDataClass();
    }
    

    【讨论】:

    • 如果我没记错的话,这表明我当前的互联网连接是否是 wwan。但我想知道我的手机是否启用了蜂窝数据选项。我可以启用或禁用 Wlan 互联网连接和蜂窝数据...
    【解决方案2】:

    我不确定这是否完全符合您的要求,但我认为您可以尝试调用MobileBroabandAccount.AvailableNetworkAccountIds 并选择范围内的第一个以获取您的默认网络帐户 ID。然后在该网络帐户 ID 上调用 MobileBroadbandAccount.CreateFromNetworkAccountId 并尝试在该网络上使用 MobileBroadbandNetwork.NetworkRegistrationState。请参阅 MobileBroadbandNetwork 文档 here 和可能的字段 here

    这是我的例子:

    Debug.WriteLine("Current network registration state is: " + MobileBroadbandAccount.CreateFromNetworkAccountId(MobileBroadbandAccount.AvailableNetworkAccountIds[0]).CurrentNetwork.NetworkRegistrationState);
    

    我认为,如果您的蜂窝数据被禁用,此通话的结果将被注销。我没有 Windows Phone,但在我的 Windows 桌面上使用移动宽带 USB 记忆棒就是这种情况。

    我知道这是一种解决方法,但我不确定是否有任何其他方法可以检查是否启用了蜂窝数据。希望这在某种程度上有所帮助。

    编辑

    我做了更多搜索,发现了这个类似的线程here

    您应该能够使用那里的答案来解决您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-02
      • 1970-01-01
      • 1970-01-01
      • 2016-07-01
      • 2010-11-04
      • 1970-01-01
      • 2019-08-09
      相关资源
      最近更新 更多