import socket
import sys
from time import ctime
ServerSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = socket.gethostname()
port = 555
ServerSocket.bind((host, port))
ServerSocket.listen(2)
while True:
clientsocket, addr = ServerSocket.accept()
print("連接地址:%s" % str(addr))
msg = "welcomt to my demo"
clientsocket.send(msg.encode("utf-8"))
data = clientsocket.recv(1024)
print(data.decode("utf-8"))
data1 = ('[%s] %s' % (ctime(),data.decode())).encode("utf-8")
clientsocket.send(data1)
clientsocket.close()
ServerSocket.close()
package com.example.myapplication;
import android.annotation.SuppressLint;
import android.os.Handler;
import android.os.Message;
import android.os.Bundle;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import java.io.InputStream;
import java.net.Socket;
public class MainActivity extends AppCompatActivity {
private final int HANDLER_MSG_TELL_RECV = 0x124;
@SuppressLint("HandlerLeak")
Handler handler = new Handler(){
public void handleMessage(Message msg){
Toast.makeText(MainActivity.this,(msg.obj).toString(),Toast.LENGTH_LONG).show();
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
startNetThread();
}
private void startNetThread() {
new Thread() {
@Override
public void run() {
try {
Socket socket = new Socket("192.168.0.111", 555);
InputStream is = socket.getInputStream();
byte[] bytes = new byte[1024];
int n = is.read(bytes);
Message msg = handler.obtainMessage(HANDLER_MSG_TELL_RECV, new String(bytes, 0, n));
msg.sendToTarget();
is.close();
socket.close();
} catch (Exception e) {
}
}
}.start();
}
}