2014-01-06 69 views
0

我試圖在每次啓動應用程序時在webview中測試互聯網連接。Android:在webview中檢查互聯網連接

我嘗試調整一個我找到的例子,但它崩潰了。 不管我的連接信息的狀態返回我相同的結果

01-06 13:31:09.665: D/INFO(1738): NetworkInfo: type: MOBILE[UMTS], state: CONNECTED/CONNECTED, reason: simLoaded, extra: internet, roaming: false, failover: false, isAvailable: true 
01-06 13:31:09.665: D/CheckNetwork(1738): internet connection 
01-06 13:34:18.829: W/System.err(1738): java.net.SocketException: The operation timed out 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.harmony.luni.platform.OSNetworkSystem.connectSocketImpl(Native Method) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.harmony.luni.platform.OSNetworkSystem.connect(OSNetworkSystem.java:114) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:245) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:535) 
01-06 13:34:18.836: W/System.err(1738):  at java.net.Socket.connect(Socket.java:1054) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:117) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:129) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348) 
01-06 13:34:18.836: W/System.err(1738):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555) 
01-06 13:34:18.846: W/System.err(1738):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 
+0

,請複製粘貼您的代碼。 –

+0

檢查這個答案它可以幫助你。 http://stackoverflow.com/questions/17959561/android-how-to-prevent-webview-to-load-when-no-internet-connection – fish40

回答

0

嘗試是這樣的:

ConnectivityManager connmgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); 
     if (connmgr != null){ 
      NetworkInfo[] netInfo = connmgr.getAllNetworkInfo(); 
      if (netInfo != null){ 
       for (int i = 0; i < netInfo.length; i++){ 
        if (netInfo[i].getState() == NetworkInfo.State.CONNECTED){ 
         // you are connected 
        } 
       } 
      } 
     }