스마트 폰 -> 공유기-> 펌웨어(192.168.0.9) 이렇게 데이터가 전달하도록 코드를 만들었습니다. 그런데 스마트폰-> 공유기-> 다른 펌웨어(198.168.0.9) 으로 데이터가 전송하는 코드로 바꾸고 싶은데 이때 공유기로부터 전달받는 단말기의 IP 주소만 변경하면 된다고 생각해서 바꿨는데 연결이 되지 않습니다.
제가 아직 이쪽 부분에 미흡하기 때문에 도저히 혼자서 해결을 못하겠어요ㅠㅠ
config 부분
public class Config {
private String url ="121.254.162.249";
private String ip ="121.254.162.249";
private String gateway = "192.168.0.9";
private int rack = 0;
private int slot = 2;
private int port3 = 3000;
public String getIp() { return ip; }
public String getUrl() { return url; }
public String getGateway() { return gateway; }
public int getRack() { return rack; }
public int getSlot() { return slot; }
public int getPort3() { return port3; }
public int getPort4() { return port4; }
}
연결 코드 부분
(연결이 되면 이미지가 변환하게 했습니다.)
private class GATEWAY1 extends Thread {
private static final String TAG = "GATEWAY Thread";
private Socket socclient = null;
private PrintWriter out = null;
private String str2 = "";
private String beforeState = "";
private boolean sock_err_flag = false;
private int sock_err_count = 0;
private int str2_count = 0;
public void run() {
while (GATE_FLAG1) {
try {
socclient = new Socket();
InetSocketAddress socketAddress = new InetSocketAddress(InetAddress.getByName(config.getGateway()), config.getPort3());
socclient.connect(socketAddress, 350);
socclient.setTcpNoDelay(true);
out = new PrintWriter(socclient.getOutputStream(), true);
out.write(GATEWAY_ORDER + "\n");
out.flush();
GATEWAY_ORDER = "sen";
str2 = "";
if (str2.equals("")) {
str2_count++;
} else {
str2_count = 0;
}
if (beforeState.equals(str2)) {
//Log.e("상태 값이같음 이미지변경안함","beforeState: "+beforeState+", str2 :"+str2);
//같으면 이미지변경 x
if (str2.equals("") && str2_count > 3) {
}
} else {
if (str2.equals("") && str2_count > 3) {
GT_handler.sendEmptyMessage(0);
} else {
GT_handler.sendEmptyMessage(1);
}
beforeState = str2;
}
if (socclient.isConnected()) {
GT_handler.sendEmptyMessage(1);
}
sock_err_flag = false;
sock_err_count = 0;
} catch (Exception e) {
e.printStackTrace();
if (sock_err_flag) {
GT_handler.sendEmptyMessage(0);
GT_handler.sendEmptyMessage(5);
GT_handler.sendEmptyMessage(6);
}
sock_err_count++;
if (sock_err_count > 4) {
sock_err_flag = true;
}
} finally {
try {
//socclient.close();
if (out != null) {
out.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}