Android에서 네트워크 연결 모니터링
문제:
네트워크 변경 사항을 어떻게 모니터링할 수 있나요? Android 장치에 연결하고 네트워크 중단 이벤트를 캡처하시겠습니까?
답변:
Android에서 네트워크 중단 이벤트를 캡처하려면 다음 단계를 따르세요.
1. Broadcast Receiver 생성:
BroadcastReceiver 클래스를 확장하는 새 Java 클래스 생성:
<code class="java">public class ConnectionChangeReceiver extends BroadcastReceiver { @Override public void onReceive( Context context, Intent intent ) { // Network connectivity change handling code goes here } }</code>
2. 브로드캐스트 수신기 등록:
<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>
3. 권한 부여:
<code class="xml"><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/></code>
4. 네트워크 연결 변경 처리:
ConnectionChangeReceiver 클래스의 onReceive 메서드 내에서 네트워크 연결 변경을 처리할 수 있습니다. 예를 들어 다음을 사용하여 활성 및 모바일 네트워크 정보를 확인할 수 있습니다.
<code class="java">ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService( Context.CONNECTIVITY_SERVICE ); NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo(); NetworkInfo mobNetInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE );</code>
예제 코드:
<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 ); if ( activeNetInfo != null ) { Toast.makeText( context, "Active Network Type : " + activeNetInfo.getTypeName(), Toast.LENGTH_SHORT ).show(); } if( mobNetInfo != null ) { Toast.makeText( context, "Mobile Network Type : " + mobNetInfo.getTypeName(), Toast.LENGTH_SHORT ).show(); } } }</code>
위 내용은 Android에서 네트워크 연결 변경을 감지하고 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!