2011-04-07 54 views
0

我有一個應用程序,它的第一件事是通過wifi進行連接併發出http請求以獲得歡迎消息。應用程序設置爲在Powerup上啓動。所以我想做這個重塑。我知道如何檢查WiFi是否建立,但如果我發現它還沒有在那裏。我如何延遲並重復嘗試連接?不確定引入延遲的正確方法。除了通電之外,還有其他一些消息,我應該抓住所有WIFI建立後發生的? 或者我可以使用的powerup延遲?謝謝在啓動時管理WIFI連接

回答

0

只需檢查您的http請求中的返回碼或異常。如果失敗,請等待一段合理的時間,然後重試。

你沒有提到你使用的操作系統,似乎是Windows。如果是這樣,有API來檢查網絡接口的狀態,但不要使用它。它不如簡單地檢查實際工作請求的結果那麼可靠。

0

您不會說您正在響應哪個廣播消息,但您應該監聽BOOT_COMPLETED。

如果WiFi不可用,則只需使用AlarmManager在一段時間後喚醒您的服務/應用程序,然後重試您的通信。您也可以使用CountDownTimer,但這可能會阻止,因此可能不合適。

0
  1. 檢查在上電時
  2. 的WiFiState如果是OFF,註冊一個BroadcastReceiver爲android.net.wifi.WIFI_STATE_CHANGED意圖。

當WiFi打開時,您的BroadcastReceiver的onReceive將被調用。查看WiFiManager documentation瞭解更多信息。