Rumah  >  Artikel  >  Java  >  Bagaimana untuk Mengesan Perubahan Ketersambungan Rangkaian dalam Android?

Bagaimana untuk Mengesan Perubahan Ketersambungan Rangkaian dalam Android?

DDD
DDDasal
2024-10-25 01:40:30877semak imbas

How to Detect Network Connectivity Changes in Android?

Melaksanakan Pendengar Rangkaian dalam Android

Soalan:

Bolehkah kami memantau perubahan sambungan rangkaian pada peranti Android dan menangkap acara apabila rangkaian di luar talian?

Jawapan:

Ya, adalah mungkin untuk mendengar perubahan sambungan rangkaian dalam Android. Berikut ialah pelaksanaan terperinci:

1. Cipta Penerima Siaran:

<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. Isytihar Kebenaran:

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

3. Daftar Penerima dalam 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>

Penjelasan:

Penerima siaran mendaftarkan dirinya untuk mendengar siaran "CONNECTIVITY_CHANGE" daripada sistem. Apabila status rangkaian berubah, kaedah onReceive() dicetuskan dan penerima boleh menyemak keadaan rangkaian semasa dan bertindak balas dengan sewajarnya.

Atas ialah kandungan terperinci Bagaimana untuk Mengesan Perubahan Ketersambungan Rangkaian dalam Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn