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 중국어 웹사이트의 기타 관련 기사를 참조하세요!