ホームページ  >  記事  >  Java  >  Android でネットワーク接続の変化を検出する方法?

Android でネットワーク接続の変化を検出する方法?

DDD
DDDオリジナル
2024-10-25 01:40:30966ブラウズ

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。