簡體   English   中英

監控Android設備上的WiFi

[英]Monitoring the WiFi on android device

我需要在我的應用程序中處理一些Wifi方案的建議。

假設我的應用程序正在運行,並且設備閑置了一會兒並且進入了睡眠模式。 在睡眠模式下,wifi會自動關閉。 現在,當設備從睡眠模式恢復時,需要花費一些時間才能打開Wifi狀態。 現在,如果在這段時間內應用后台服務正在發出http請求,我們如何處理這種情況?

要么

假設如果Wifi不可用,則設備正在嘗試連接到GPRS / 3G,並且在此期間,如果用戶/后台服務發出了HTTP請求,我們如何在代碼中處理它?

  1. 您可以列出網絡接口,它們的類型和連接狀態:

    獲取所有網絡接口:

     NetworkInfo[] networkInfos = ConnectivityManager.getAllNetworkInfo(); 

    檢查網絡接口的類型

     networkInfo.getType() == ConnectivityManager.TYPE_MOBILE // or TYPE_WIFI 

    根據NetworkInfo.State檢查狀態

     networkInfo.getState() == NetworkInfo.State.CONNECTED 
  2. 如果需要連接,則可以:

    一種。 如上所述,檢查網絡狀態。

    b。 注冊接收器以在網絡連接更改時獲取更新信息: Android SDK中網絡事件的意圖操作

  3. 如果在沒有連接的情況下嘗試獲取HTTP數據,則會出現異常。 您可以捕獲此錯誤,然后稍后重試,但是選項2更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM