2013-04-25 3 views
0

안녕하세요 저는 서버에 연결할 수있는 Android 앱을 개발 중입니다. 이 응용 프로그램은 온라인 또는 오프라인으로 작업 할 수 있습니다. 서버에 연결하려면 AsyncTask를 사용하고 doInBackground에서 모든 네트워크 작업을 수행합니다. 그런 다음 버튼을 클릭 할 때 Asynctask의 새 인스턴스를 만듭니다. AsyncTask를 시작하기 위해 서버가 활성 상태인지 확인하는 방법이 있는지 알고 싶습니다. 시도하고 잡으려고 생각했지만 더 나은 솔루션이 있는지 알고 싶습니다.Android : 오프라인 일 때 서버에 연결

+0

인터넷 연결이 있는지 (여러 가지 예를 사용할 수 있으며 Google 만 가능) 참조한 다음 AsyncTask를 호출합니다. –

답변

3

AsyncTask를 실행하기 전에이 코드 조각을 사용하여 네트워크 연결을 확인하십시오.

ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); 
NetworkInfo netInfo = connMgr.getActiveNetworkInfo(); 

boolean isConnected = netInfo!=null && netInfo.getState()==NetworkInfo.State.CONNECTED; 

매니페스트에 권한을 추가하는 것을 잊지 마십시오.

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
+0

많은 감사합니다 approxcom, 지금 일하고 있습니다. – Katherine99

관련 문제