package
tae.NetworkClient;
import
java.net.DatagramPacket;
import
java.net.DatagramSocket;
import
java.net.InetAddress;
import
android.util.Log;
public
class
NetworkUDP {
private
static
final
String serverIP =
"10.0.2.2"
;
//serverIP를 추가합니다.
private
static
final
int
port =
8000
;
//서버에서 설정한 UDP 포트번호를 추가합니다.
private
String msg;
private
String return_msg;
public
NetworkUDP(String _msg) {
this
.msg = _msg;
}
public
String run() {
try
{
DatagramSocket socket =
new
DatagramSocket();
InetAddress serverAddr = InetAddress.getByName(serverIP);
//TCP와 다르게 UDP는 byte단위로 데이터를 전송합니다. 그래서 byte를 생성해줍니다.
byte
[] buf =
new
byte
[
128
];
//받아온 msg를 바이트 단위로 변경합니다.
buf = msg.getBytes();
//DatagramPacket를 이용하여 서버에 접속합니다.
DatagramPacket Packet =
new
DatagramPacket(buf, buf.length, serverAddr, port);
Log.d(
"UDP"
,
"sendpacket.... "
+
new
String(buf));
socket.send(Packet);
Log.d(
"UDP"
,
"send...."
);
Log.d(
"UDP"
,
"Done."
);
socket.receive(Packet);
Log.d(
"UDP"
,
"Receive"
+
new
String(Packet.getData()));
//데이터를 받아와 return_msg에 복사합니다.
return_msg =
new
String(Packet.getData());
}
catch
(Exception ex) {
Log.d(
"UDP"
,
"C: Error"
, ex);
}
return
return_msg;
}
}
'Android_Programma' 카테고리의 다른 글
[ Android ] Service 가 떠져 있는지 안떠져 있는지 체크하기 (0) | 2012.08.03 |
---|---|
[ Android ] Notification 띄우기 (0) | 2012.08.03 |
[ Android ] Custom ListView Library (0) | 2012.08.02 |
[ Android ] Thread 에서 Main UI 변경하기 Handler 사용하기 예제 코드 (0) | 2012.07.30 |
[ Android ] 좀 쉽게 만든 JAVA JSON parsor CLASS (0) | 2012.07.26 |