如果网络不存在,则打开WiFi对话框

时间:2015-10-19 03:34:03

标签: c# network-programming wireless uwp

编写UWP应用程序,如果未检测到网络(有线然后无线),我想打开选择无线网络的设置对话框。

我似乎无法找到有关这种可能性的任何细节,如果可能的话,如何实现这一目标。

2 个答案:

答案 0 :(得分:0)

我不确定这是否完全符合您的要求,但它应该可以正常工作。

在UWP应用中打开Windows设置的有用链接是THIS

正如它所说,如果该应用是移动设备,您可以使用:ms-settings-wifi:

对于桌面/非移动设备,请使用ms-settings:network-wifi

请注意,如果设备上没有无线适配器,ms-settings:network-wifims-settings-wifi:会打开主设置窗口。

尝试在Run(Win + R)中启动此应用程序ms-settings:network-wifi

在C#中使用它的一个例子是

// The URI to launch
string uriToLaunch = @"ms-settings:network-wifi";

// Create a Uri object from a URI string 
var uri = new Uri(uriToLaunch);

// Launch the URI
async void DefaultLaunch()
{
   // Launch the URI
   var success = await Windows.System.Launcher.LaunchUriAsync(uri);

   if (success)
   {
      // URI launched
   }
   else
   {
      // URI launch failed
   }
}

答案 1 :(得分:0)

你走了:

var profile = NetworkInformation.GetInternetConnectionProfile();
if (profile == null || profile.GetNetworkConnectivityLevel() < NetworkConnectivityLevel.InternetAccess)
{
    await Launcher.LaunchUriAsync(new Uri("ms-settings:network-wifi"));
}

这样,当有互联网访问或受限互联网访问时,网络设置就会打开。要仅捕获丢失的互联网访问权限,请将比较从< NetworkConnectivityLevel.InternetAccess更改为!= NetworkConnectivityLevel.InternetAccess