2014-12-25 18 views
5

Làm cách nào để biết điện thoại có kết nối internet không? (Cho dù WiFi hoặc Dữ liệu)Windows Phone 8.1: Kiểm tra kết nối Internet

Đôi khi điện thoại đang kết nối với WiFi mà không cần kết nối internet như HotSpots. Vì vậy, tôi muốn có một mã để biết nếu điện thoại đang kết nối với internet.

+0

không https://stackoverflow.com/questions/ Hỗ trợ 22362646/windows-phone-8-mạng-sẵn sàng như thế nào? – matthew5025

+0

bạn cần nó để làm gì? dịch vụ web? – jackjop

+1

Trước khi tôi gọi dịch vụ web, tôi muốn biết liệu người dùng có đang kết nối với Internet hay không ... –

Trả lời

0

Điều bạn muốn là một cổng bị khóa, đó là một trang mà người dùng kết nối, để kiểm tra xem kết nối internet của họ có đang hoạt động hay không, nó có thể được giải thích chi tiết hơn.

Các dự án mã nguồn mở nhìn đầy hứa hẹn:

  1. WiFiDog
  2. ChilliSpot

Good Luck!

2

Bạn chỉ có thể thử:

if (NetworkInformation.GetInternetConnectionProfile() == null) 
     { 
      //no connection 
     } 

Như bạn thấy trong tài liệu MSDN này: NetworkInformation.GetInternetConnectionProfile

Nó sẽ trở lại rỗng nếu không có "hồ sơ cá nhân kết nối với một kết nối phù hợp"

Bạn cũng có thể kiểm tra mức độ truy cập "Truy cập Internet" bằng cách này: NetworkInformation.GetInternetConnectionProfile().GetNetworkConnectivityLevel() == NetworkConnectivityLevel.InternetAccess

Tôi nghĩ rằng điều này cũng sẽ làm việc trong ứng dụng toàn cầu.

0

Vui lòng xem xét kiểm tra internet trong chủ đề nền

if (await Task.Run(() =>NetworkInterface.GetIsNetworkAvailable()) 
{ 
    //Wifi or Cellular 
} 
else 
{ 
    // No internet 
} 
1

dưới đây Phương pháp làm việc cho tôi chỉ đơn giản là để kiểm tra xem các thiết bị được kết nối với Internet hoặc thậm chí không phổ biến các cửa sổ ứng dụng. Sau khi tạo lớp kết nối bạn chỉ có thể sử dụng nó bất cứ nơi nào chỉ bằng cách instantiating lớp này ...

public class Connection 
{ 
    public bool CheckInternetAccess() 
    { 
     var connectionProfile = NetworkInformation.GetInternetConnectionProfile(); 
     var HasInternetAccess = (connectionProfile != null && 
          connectionProfile.GetNetworkConnectivityLevel() == 
          NetworkConnectivityLevel.InternetAccess); 
     return HasInternetAccess; 
    } 
} 

Để sử dụng lớp này chỉ đơn giản ..

Connection objConnection = new Connection(); 
if(objConnection.CheckInternetAccess()==true) 
{ 
    //todo 
} 
else 
{//todo} 
Các vấn đề liên quan