我想为Windows Phone开一个笑话应用程序。该应用程序从互联网上得到笑话,所以我希望它能够检查WiFi信号或能够连接到互联网。我将如何去创建它?Windows phone 8,检查wifi是否打开?
回答
在WP8.1运行,您可以查询大多数的这些东西从NetworkInformation
类,像这样:
// need this namespace
using Windows.Networking.Connectivity;
bool is_wifi_connected = false;
ConnectionProfile current_connection_for_internet = NetworkInformation.GetInternetConnectionProfile();
if (current_connection_for_internet.IsWlanConnectionProfile)
{
if (current_connection_for_internet.GetNetworkConnectivityLevel() == NetworkConnectivityLevel.InternetAccess)
{
is_wifi_connected = true;
}
}
WP8.0可以查询大多数的这些东西从NetworkInterfaceList
像这样:
// see is wifi is ON and connected
using Microsoft.Phone.Net.NetworkInformation;
bool is_wifi_connected = false;
if (NetworkInterface.GetIsNetworkAvailable())
{
NetworkInterfaceList nif = new NetworkInterfaceList();
foreach(NetworkInterfaceInfo item in nif)
{
if (item.InterfaceSubtype == NetworkInterfaceSubType.WiFi && item.InterfaceState == ConnectState.Connected)
{
is_wifi_connected = true;
}
}
}
我们看看它是否可以连接到该网站只是打开一个连接。你可以使用任何你喜欢的网络连接。当文件完成下载时,只需要使用WebClient和事件处理程序来完成此操作。
using System.Net;
// check network and is_wifi_connected
if (System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable() && is_wifi_connected)
{
WebClient downloader = new WebClient();
Uri uri = new Uri("http://www.google.com", UriKind.Absolute);
downloader.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DownloadDone);
downloader.DownloadStringAsync(uri);
}
void DownloadDone(object sender, DownloadStringCompletedEventArgs e)
{
if (e.Result == null || e.Error != null)
{
MessageBox.Show("There was an error downloading the site.");
}
else
{
// your html file or what not is stored here
string content = e.Result;
}
}
感谢您的回复,它说“无法找到NetworkInterfaceList”...,我如何使这个工作在Windows 8.1上? – Hunt3R 2014-11-04 20:03:08
@ Hunt3R你的问题被标记为Windows Phone 8.0,我给你提供了解决方案。你说你需要它的Windows 8.1?你不是说Windows Phone 8.1吗?即使你说我需要Windows Phone 8.1,它仍然不清楚。重新标记您的问题或明确声明您正在使用Windows Phone 8.1(运行时)或Windows Phone 8.1(Silverlight) - 它们是不同的东西。 – 2014-11-04 20:22:25
对于windows phone 8.1,我得到一个错误sayung“NetworkInterfaceList无法找到”。那是问题和另一个问题是我怎么能在Windows 8.1中做同样的事情? – Hunt3R 2014-11-04 20:37:58
- 1. 检查软件键盘是否在Windows Phone 8中打开?
- 2. 检测wifi是否打开
- 3. Windows Phone 8检查位置是否开启/关闭?
- 4. 检测wifi是否已打开 - iOS
- 5. Windows Phone 8开发
- 6. 检查Windows 8手机应用程序中是否打开了Internet?
- 7. Cordova InAppBrowser打开FTP URL Windows Phone 8
- 8. 要检查wifi是否打开,但没有互联网连接
- 9. 检查Thickbox是否打开
- 10. Windows Phone 8,以编程方式检查设置的日期和时间是否自动打开或关闭
- 11. Windows Phone 8游戏开发
- 12. Windows Phone 8是否支持GIF图像?
- 13. Windows Phone 8是否支持Qt?
- 14. 打破Windows Phone开发碰撞检测
- 15. 检查端口是否打开
- 16. Windows - Python,检查程序是否打开,如果是,从任务栏打开它?
- 17. 检查文件是否打开
- 18. 是否可以检测Windows Phone 8 Tile的位置?
- 19. 如何知道iOS是否打开wifi?
- 20. php:检查文件是否打开
- 21. Windows 8和Windows Phone 8
- 22. Windows 8中的Windows Phone 8
- 23. Windows Phone - 打开网站时打开
- 24. 检查HTTP端口是否在Windows上打开
- 25. 针对Windows 8/Windows Phone 8(Apollo)/ Windows Phone 7开发 - WinRT(JavaScript)与Silverlight(C#)
- 26. 检查是否有任何UserControl打开
- 27. VBS检查窗口是否打开
- 28. 检查一张表是否打开
- 29. 检查表单是否打开
- 30. 检查文件是否打开
ping一个应该/像谷歌的公共dns一样可用的ip吗?拥有wifi没有任何意义。就好像在说:“我有一杯,为什么它里面没有啤酒?” – 2014-11-03 21:23:19