2013-05-09 5 views
1

나는 인터넷에 항상 액세스해야하는 응용 프로그램을 개발 중입니다. 인터넷에 연결되어 있는지 또는 다음 코드를 사용하고 있는지 찾을 수 있습니다.응용 프로그램 전체에서 서버 상태를 감지하십시오.

private Boolean isNetworkAvailable() { 
    ConnectivityManager connectivityManager 
    = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
    NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo(); 
    return activeNetworkInfo != null && activeNetworkInfo.isConnected(); 
} 

그러나 실행 도중에 서버가 다운되거나 인터넷이 손실 될 수도 있습니다. 아무도이 상황을 처리하는 방법을 말해 줄래 ?? 현재 인터넷이 손실되면 앱이 다운됩니다. 인터넷 연결 상태를 지속적으로 모니터링하고 싶습니다.

+0

"모든 시간 동안 인터넷에 접속해야하는 응용 프로그램을 개발 중입니다."이는 모든 모바일 응용 프로그램에 대한 잘못된 가정입니다. –

답변

0

서버에 핑 (ping)하여 응답 코드를 얻을 수 있습니다. 응답 코드가 200 또는 HttpStatus.SC_OK이면 서버가 정상적으로 작동합니다.

+0

답장을 보내 주셔서 감사합니다. 같은 것을 시도해보십시오! – bharath

0

u는 응용 프로그램이 연결이 변경 될 때마다 알리도록 BroadcastReceiver을 사용할 수 있습니다. 자세한 설명은 docs : BroadcastReceiverConnectivity Monitoring을 참조하십시오.

도움이되기를 바랍니다.