2011-05-16 6 views
1

호스트에 ping을하지 않고 폰갭 - 안드로이드에서 네트워크 상태 유형을 얻고 그러나내가 폰갭 - 안드로이드 응용 프로그램이

http://docs.phonegap.com/phonegap_network_network.md.html에 설명 된대로 나는 폰갭 API를 사용하여 네트워크 연결 유형 (연결, WIFI, GSM)을 확인하려면 , 특정 호스트 이름에 도달 할 수 있는지 확인하지 않아도됩니다. 내가 알아야 할 유일한 것은 연결 유형이므로 인터넷에 핑 (ping)이 발생하지 않습니다.

나는 이들과 같은 변형을 시도했습니다,하지만 운 :

navigator.network.isReachable(null, reachableCallback); 
navigator.network.isReachable(false, reachableCallback); 
navigator.network.isReachable('', reachableCallback); 

실제로 폰갭 안드로이드 응용 프로그램에서 인터넷에 액세스하지 않고 네트워크 연결 유형을 얻을 수있는 방법을 방법이 있나요?

답변

0

현재로서는이를 수행 할 방법이 없습니다.

네이티브 코드에서 원하는 것을 얻기 위해 항상 phonegap 용 플러그인을 작성할 수 있습니다. 여기에 플러그인을 작성하는 방법에 대한 좋은 항목이 있습니다. http://wiki.phonegap.com/w/page/36752779/PhoneGap-Plugins

죄송 합니다만 Android 용 Java에서이 기능을 작성하는 방법은 없습니다.

+0

오, 음, 나는 어떤 종류의 기적을 기대하고 있었다 ;-) – Frodik

0

0.9.6 현재이 문제를 해결하는 Connection이라는 새로운 API가 있습니다. 좀 봐 http://docs.phonegap.com/phonegap_connection_connection.md.html

+0

그것은 정말로 안드로이드에서 일관성이 없다. Nexus S에서 3G 및 4G 연결에 대해 Connection.UNKNOWN이 반환됩니다. navigator.network.connection.type이 "알 수 없음"인 경우 서버에 Ping을 수행하는 것이 가장 신뢰할 수있는 방법입니다. 장치간에 일관성이 없기 때문에 지표로 "알 수 없음"을 사용하면 수동으로 테스트해야합니다. – msumme

+0

예, Android (HTC Desire X, 4.0.1)에서 일관되지 않습니다. 내 휴대 전화가 3G를 사용하지만 WIFI를 사용하고있을 때 Connection.NONE을 얻으면 괜찮습니다. –

관련 문제