은 내가 브로드 캐스트 리시버 상속 클래스를 사용하여 네트워크 상태를 확인하는 안드로이드 응용 프로그램을 작성했습니다하지 : 다음과 같이 매니페스트 파일에 등록되어응용 프로그램을 수동으로 닫혀있는 경우 감지 또는
public class NetworkChangeReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, final Intent intent) {
Log.d("mylog", "NetworkChangeReceiver Hit");
}
}
:
<receiver
android:name="foo.NetworkChangeReceiver"
android:label="NetworkChangeReceiver" >
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
</intent-filter>
</receiver>
연결하거나 연결을 끊을 때마다 인터넷 연결을 처리해야했습니다. 사실 정상적인 상황에서는 완벽하게 작동합니다.
그러나 문제는 응용 프로그램을 최소화하여 응용 프로그램을 최소화 한 다음 응용 프로그램 아이콘을 Recents 버튼 메뉴에서 스 와이프하여 닫으면 문제가 발생하지만 여전히 네트워크 상태 변경 사항을 수신합니다. 때때로 일부 예외가 발생합니다.
심지어 수신기 기능의 모든 코드를 try/catch 블록에 포함 시켰지만 여전히 오류 메시지가 포함 된 축배 메시지가 표시됩니다. 앱을 종료 한 후 며칠 후에도 가끔씩 이런 일이 발생합니다.
수신기 기능의 코드는 여기에 표시된 코드보다 복잡하며 내부 클래스와 변수에 대한 일부 액세스 권한이 있습니다.
"해결책 찾음"이 답변으로 게시되어야 함 –