You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
public boolean sflag = false;<br />
public ClientThread(ClientTCP _client, Socket _socket) {<br />
client = _client;<br />
socket = _socket;<br />
open();<br />
start();<br />
}<br />
public void open() {<br />
try {<br />
streamIn = new DataInputStream(socket.getInputStream());<br />
} catch (IOException ioe) {<br />
Log.i(TAG, "Error getting input stream: " + ioe);<br />
client.close();<br />
}<br />
}<br />
public void close() {<br />
try {<br />
if (streamIn != null)<br />
streamIn.close();<br />
} catch (IOException ioe) {<br />
Log.d(TAG, "Error closing input stream: " + ioe);<br />
}<br />
}<br />
}<br />
}<br />
public void run() {<br />
while (!sflag) {<br />
try {<br />
client.handle(streamIn.readUTF());<br />
} catch (IOException ioe) {<br />
Log.d(TAG, "Listening error: " + ioe.getMessage());<br />
client.close();<br />
sflag = true;<br />
}<br />
}<br />
}<br />
การทำงานของไคลเอนท์จะมีลักษณะคล้ายกับเซิร์ฟเวอร์ โดยไคลเอนท์จะเชื่อมต่อไปยังเซิร์ฟเวอร์<br />
ด้วยการกำหนดไอพี (IP) และพอร์ต (Port) ที่ต้องการเชื่อมต่อ เมื่อเชื่อมต่อสำเร็จจะมีการแยกเทรดออกมาเพื่อ<br />
รอรับข้อมูลที่ส่งมาจากเซิร์ฟเวอร์ และแสดงข้อมูลที่ได้รับบนหน้าจอ<br />
2. เขียนโค้ดเพิ่มในเมธอด startServer() ของคลาส BasicNetworkTCPActivity ดังนี้<br />
public void startServer() {<br />
//start server code<br />
tcpServer = new ServerTCP(this, run_server_port);<br />
mode = SERVER_MODE;<br />
textMode.setText("Server Mode");<br />
}<br />
บทที ่ 10 การพัฒนาแอพพลิเคชันติดต่อบนเครือข่ายอย่างง่าย 209