public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.d("sions", "START");
Log.d("sions", getLocalIpAddress());
((TextView)findViewById(R.id.textView1)).setText("IP:"+getLocalIpAddress());
new Thread(){
public void run(){
TextView tt = ((TextView)findViewById(R.id.textView1));
tt.setText(tt.getText()+"\nAC");
try{
ServerSocket ss = new ServerSocket(61111);
tt.setText(tt.getText()+"\n"+ss);
while(true){
Socket s = ss.accept();
tt.setText(tt.getText()+"\n"+s);
s.getOutputStream().write("hellow".getBytes());
sleep(1000);
s.close();
}
}catch(Exception e){
Log.e("sions", e.getMessage(), e);
}
}
}.start();
}
public String getLocalIpAddress() {
try {
Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces();
while(en.hasMoreElements()) {
NetworkInterface interf = en.nextElement();
Enumeration<InetAddress> ips = interf.getInetAddresses();
while (ips.hasMoreElements()) {
InetAddress inetAddress = ips.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
}
}
}
} catch (SocketException ex) {
Log.e("Testing", ex.toString());
}
return null;
}
현재 이 소스로하여금 textview1이라는 textview에 아이피를 보여주고 서버소켓을 열었습니다.
그래서 나온 아이피가 10.0.2.15였습니다.
그래서 그 소켓으로 telnet 10.0.2.15 61111이렇게해서 접속을 했는데 접속이 안되네요 왜이럴까요?
설마해서 telnet localhost 10.0.2.15 61111도 해봤지만 똑같이 접속을 못하네요.
원래라면 접속이되서 Hellow라는 문구가 나와야하는데;