首頁 > Java > java教程 > 主體

如何偵測 Android 中的網路連線變化?

DDD
發布: 2024-10-25 01:40:30
原創
885 人瀏覽過

How to Detect Network Connectivity Changes in Android?

在Android 中實作網路監聽器

問題:

我們能否監控Android 裝置上的網路連線變化並捕捉事件當網路離線時?

答案:

是的,Android 中可以監聽網路連線變化。詳細實作如下:

1.建立廣播接收器:

<code class="java">public class ConnectionChangeReceiver extends BroadcastReceiver {
  ...
  @Override
  public void onReceive(Context context, Intent intent) {
    ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
    NetworkInfo mobNetInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
    // Check for active network and mobile network changes
    ...
  }
  ...
}</code>
登入後複製

2.聲明權限:

<code class="xml"><!-- Required to monitor network connectivity changes -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /></code>
登入後複製

3.在AndroidManifest.xml中註冊接收器:

<code class="xml"><receiver android:name="com.blackboard.androidtest.receiver.ConnectionChangeReceiver"
          android:label="NetworkConnection">
  <intent-filter>
    <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
  </intent-filter>
</receiver></code>
登入後複製

說明:

廣播接收器註冊自己以偵聽來自系統的“CONNECTIVITY_CHANGE”廣播。當網路狀態變更時,會觸發 onReceive() 方法,接收方可以檢查目前網路狀態並做出對應回應。

以上是如何偵測 Android 中的網路連線變化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!