2014-10-03 3 views
0

ConnectivityManager를 사용하는 방법을 이해하려고 시도하고 있으며 HereHere은 물론 Official documentation에서도 좋은 샘플을 볼 수 있습니다.안드로이드에서 연결 유형 및 품질 확인

나는 이미 브로드 캐스트 리시버 설정을하고 "android.net.conn.CONNECTIVITY_CHANGE"의도을 듣고,하지만 난 다음 의사의 논리를 파악하는 방법을 정확히 여전히에 대한 혼란 스러워요 :

String result = null; 
if (WifiConnected) 
    result = "Wifi: " + getWifiName();//or ID that can be related to the list of Wifi networks on the device 
else if (MobileDataConnected) 
{ 
    String networktype = GetMobileNetworkType();//2G/3G/4G 
    String roaming = IsMobileRoaming();//Roam/Home 
    result = "Mobile: " + networktype + " " + roaming; 
} 
else 
{ 
    result = "Not connected"; 
} 

하나를 도움을 크게 주시면 감사하겠습니다.

감사합니다.

+0

누군가 당신에게 유용 할 수있는 멋진 요지를 공유했습니다. https://gist.github.com/emil2k/5130324 – 2Dee

+0

감사합니다 !! CommonsWare의 대답과 함께, 나는 내가 필요한 것을 해킹 할 수 있었다 :-) –

+0

Nice, well done;) – 2Dee

답변

1

Call getActiveNetworkInfo() on ConnectivityManager. 그러면 NetworkInfo 개체 (type (WiFi, 모바일 데이터), sub-typeroaming status)가 반환됩니다.

제가 확신 할 수없는 유일한 사실은 2G/3G/4G 작업입니다. 서브 타입이었던 생각이 이었지만, 나는 그것에 대해 틀릴 수도 있습니다.

+0

Thanks !! 2Dee의 링크와 함께, 나는 내가 필요한 것을 해킹 할 수 있었다 :-) –