안녕하세요.
소켓과 관련해서 질문이 있습니다.
지금 현재 아래의 사진에서 보면, 액티비티1을 누르면 그다음에 open 버튼이 있는곳에 도달하게 됩니다.
그리고 저 open부분을 누르게 되면, 그 아래의 소스코드의 전반적으로 써져있는 로그부분(뚜벅이 1~ 뚜벅이5) 까지
로그가 잘 찍히면서 버튼의 finish()문으로 인해 종료가 되어 다시 액티비티1 버튼이 있는 화면으로 이동합니다.
그리고 다시, 액티비티를 눌렀을 경우에도 같고, 한번 더 눌렀을 경우에도 이와 같습니다.
하지만, 4번째에 들어가게 되었을 경우에, 뚜벅이 로그는 3까지만 찍히며 run()함수의 Socket의 바로 위쪽의
로그인 Log.i("socket","attemping connect") 까지만 찍히게 되고.. 그 이후에는 버튼이 아무런 동작을
하지 않습니다. 소켓과 관련해서 분명히 문제가 있는것 같은데 그 원인을 잘 모르겠어서 질문을 합니다.
어떻게 해야, 횟수에 상관없이 계속적으로 버튼을 눌렀을때 뚜벅이가 1~5까지 정상적으로 찍히면서
소켓이 열리며, 정상작동이 되게 만들수 있을까요 ?
소스가 추가되는 부분은 제 글의 댓글 부분에 달아보겠습니다. ㅠ ㅠ


import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.Toast;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
public class First extends AppCompatActivity implements Runnable {
private Socket socket;
private DataInputStream dataInputStream;
private DataOutputStream dataOutputStream;
private byte[] buffer;
private Thread thread;
private String ip="192.168.11.6";
private Button transferButton;
private final static int TRANSFER=1;
private final static int NOMOVEMENT=0;
private int rwFlag;
private boolean threadStopFlag;