溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

在程序代碼中對wifi網(wǎng)絡(luò)發(fā)生變化情況進(jìn)行處理

發(fā)布時間:2020-08-05 12:52:06 來源:網(wǎng)絡(luò) 閱讀:347 作者:truesea 欄目:開發(fā)技術(shù)

當(dāng)wifi功能被關(guān)閉時,在Log中看到以下和wifi狀態(tài)改變有關(guān)的日志:

11-04 11:09:34.559: E/WifiService(185): Handle MESSAGE_DISABLE_WIFI.
11-04 11:09:34.569: D/DATA(287): [DCT(0) ] intent received :android.net.wifi.WIFI_STATE_CHANGED
11-04 11:09:34.569: D/StatusBarPolicy(254): updateWifi: android.net.wifi.WIFI_STATE_CHANGED : wifi state: 0 supplicant connected: false
11-04 11:09:34.579: I/wpa_supplicant(8310): CTRL-EVENT-TERMINATING - signal 15 received
11-04 11:09:34.579: V/WifiMonitor(185): Event [CTRL-EVENT-TERMINATING - signal 15 received]
11-04 11:09:34.579: V/WifiStateTracker(185): handleMessage(): msg.what= 2

在當(dāng)前程序中沒有對wifi斷開進(jìn)行處理,所以出現(xiàn)以下異常:

11-04 11:09:35.889: E/DownThread(7389): Connection timed out
11-04 11:09:35.889: E/DownThread(7389): java.net.SocketException: Connection timed out
11-04 11:09:35.889: E/DownThread(7389):     at org.apache.harmony.luni.platform.OSNetworkSystem.read(Native Method)
11-04 11:09:35.889: E/DownThread(7389):     at dalvik.system.BlockGuard$WrappedNetworkSystem.read(BlockGuard.java:273)
11-04 11:09:35.889: E/DownThread(7389):     at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:458)
11-04 11:09:35.889: E/DownThread(7389):     at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:85)
11-04 11:09:35.889: E/DownThread(7389):     at java.io.BufferedInputStream.read(BufferedInputStream.java:319)
11-04 11:09:35.889: E/DownThread(7389):     at org.apache.harmony.luni.internal.net.www.protocol.http.FixedLengthInputStream.read(FixedLengthInputStream.java:44)
11-04 11:09:35.889: E/DownThread(7389):     at java.io.BufferedInputStream.read(BufferedInputStream.java:319)
11-04 11:09:35.889: E/DownThread(7389):     at java.io.FilterInputStream.read(FilterInputStream.java:133)
11-04 11:09:35.889: E/DownThread(7389):     at com.tvie.ivideo.download.logic.DownThread.run(DownThread.java:65)

出現(xiàn)異常的代碼是InputStream的read方法。

while ((len = is.read(buffer)) != -1 && running) {

read方法的聲明表現(xiàn)會拋出IOException。

int java.io.InputStream.read(byte[] buffer) throws IOException


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI