ホームページ >Java >&#&チュートリアル >Android アプリケーションでインターネット接続の変化を監視するにはどうすればよいですか?

Android アプリケーションでインターネット接続の変化を監視するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-29 11:15:02613ブラウズ

How can I monitor Internet connectivity changes in my Android application?

Android: インターネット接続の変化の監視

インターネット接続の変化を監視するために、Android は ConnectivityManager.NetworkCallback クラスを提供します。これにより、従来の BroadcastReceiver と比較して、より詳細なリスニングが可能になります。実装方法は次のとおりです:

<code class="java">public class ConnectivityMonitor extends ConnectivityManager.NetworkCallback {

    @Override
    public void onAvailable(Network network) {
        // Internet connectivity is available
        Log.d("Connectivity", "Internet connected");
    }

    @Override
    public void onLost(Network network) {
        // Internet connectivity is lost
        Log.d("Connectivity", "Internet disconnected");
    }
}</code>

このコールバックを登録するには、ConnectivityManager インスタンスを作成し、registerNetworkCallback メソッドを呼び出す必要があります:

<code class="java">ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
connectivityManager.registerNetworkCallback(new NetworkRequest.Builder().build(), new ConnectivityMonitor());</code>

事前定義された接続を使用することもできます。 ConnectivityManager からの状態:

<code class="java">if (connectivityManager.getActiveNetworkInfo() != null) {
    // Connected to a network
    if (connectivityManager.getActiveNetworkInfo().isConnectedToWifi()) {
        // Connected via WiFi
    } else {
        // Connected via mobile data
    }
} else {
    // Not connected to a network
}</code>

完了したら忘れずにコールバックの登録を解除してください:

<code class="java">connectivityManager.unregisterNetworkCallback(new ConnectivityMonitor());</code>

以上がAndroid アプリケーションでインターネット接続の変化を監視するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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