핸들러를 사용하는 것이 좋을 듯 합니다.
아래가 예제 코드입니다.
checkConnect() 는 임의로 적어둔 연결 체크 함수로 예제 코드에는 없습니다.
직접 구현 하시면 될 겁니다.
private static final int CHECK_DELAY = 1000; // 1초
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mHandler.sendEmptyMessageAtTime(0, CHECK_DELAY); // 0번 메세지를 CHECK_DELAY ms 후 보냄
}
private Handler mHandler = new Handler()
{
@Override
public void handleMessage(Message msg) {
switch(msg.what)
{
case 0: // 0번 메세지
{
boolean isConnected = checkConnect(); // 연결 체크
if(isConnected == true )
{
mHandler.sendEmptyMessageAtTime(0, CHECK_DELAY); // CHECK_DELAY ms 후 다시 체크하도록 함
}
else
{
// 다이알로그 띄움
// 종료 버튼 클릭 시 fininsh 호출
// 재 연결 버튼 클릭시 재연결을 시킨 이후 mHandler.sendEmptyMessageAtTime(0, CHECK_DELAY);
//를 다시 호출 해서 연결 체크를 계속 수행
}
}
break;
}
}
};