有沒有什麼辦法可以知道網絡是否在。我有下面的代碼blackbery設備連接或沒有,但它是等到網絡超時。黑莓收到通知。
int rc = connection.getResponseCode();
if (rc != HttpConnection.HTTP_OK) {
throw new IOException("HTTP response code: " + rc);
}
有沒有其他辦法。
有沒有什麼辦法可以知道網絡是否在。我有下面的代碼blackbery設備連接或沒有,但它是等到網絡超時。黑莓收到通知。
int rc = connection.getResponseCode();
if (rc != HttpConnection.HTTP_OK) {
throw new IOException("HTTP response code: " + rc);
}
有沒有其他辦法。
有用於獲取網絡信息的幾個API:
RadioInfo.isDataServiceOperational();
CoverageInfo.isOutOfCoverage();
WLANInfo.getWLANState();
這個問題的標題比問題的主體有不同的含義。基於該標題,則可以當網絡通過使用RadioStatusListener接口,它定義一個networkStarted()函數開始通知。然後,您可以使用coldice建議的檢查來確保當前網絡支持數據傳輸。
我第二變形點焊此,具體內RadioStatusListner的networkStateChange(INT狀態)方法。這將爲您節省後臺線程始終檢查網絡狀態的麻煩。 雖然我也建議檢查RadioInfo.isDataServiceOperational()之前使每個時間的數據連接。考慮到你可能會等待超時,這是一個建議的做法。 – AtariPete 2009-09-01 14:58:42
+1 RadioInfo.getState()也可能是在努力爲用戶創建一個強大的/有用的錯誤信息很有幫助。 – Fostah 2009-09-01 12:26:03