新网站百度收录,做外贸在哪个平台比较好,wordpress 发布时间不对,WordPress对接易支付本文实例讲述了python服务器与android客户端socket通信的方法。分享给大家供大家参考。具体实现方法如下#xff1a;
首先#xff0c;服务器端使用python完成#xff0c;下面为python代码#xff1a;
#server.py
import socket
def getipaddrs(hostname):#只是为了显示IP
首先服务器端使用python完成下面为python代码
#server.py
import socket
def getipaddrs(hostname):#只是为了显示IP仅仅测试一下
result socket.getaddrinfo(hostname,None,socket.SOCK_STREAM)
return [x[4][0] for x in result]
host #为空代表为本地host
hostname socket.gethostname()
hostip getipaddrs(hostname)
print(host ip,hostip)#应该显示为127.0.1.1
port 9999 # Arbitrary non-privileged port
s socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((host,port))
s.listen(4)
while True:
conn,addr s.accept()
print(Connected by,addr)
data conn.recv(1024)
if not data: break
conn.sendall(data)#把接收到数据原封不动的发送回去
print(Received,repr(data))
conn.close()
下面是Android代码
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
public class TcpClient extends Activity {
/** Called when the activity is first created. */
Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
runTcpClient();
finish();
}
private static final int TCP_SERVER_PORT 9999;//should be same to the server port
private void runTcpClient() {
try {
Socket s new Socket(**.**.intel.com,TCP_SERVER_PORT);//注意host改成你服务器的hostname或IP地址
BufferedReader in new BufferedReader(new InputStreamReader(s.getInputStream()));
BufferedWriter out new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
//send output msg
String outMsg TCP connecting to TCP_SERVER_PORT System.getProperty(line.separator);
out.write(outMsg);//发送数据
out.flush();
Log.i(TcpClient,sent: outMsg);
//accept server response
String inMsg in.readLine() System.getProperty(line.separator);//得到服务器返回的数据
Log.i(TcpClient,received: inMsg);
//close connection
s.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
//replace runTcpClient() at onCreate with this method if you want to run tcp client as a service
private void runTcpClientAsService() {
Intent lIntent new Intent(this.getApplicationContext(),TcpClientService.class);
this.startService(lIntent);
}
}
安卓代码中要注意的就是服务器的地址要写对而且要保证服务器是可以被你的网段访问的。
希望本文所述对大家的Python程序设计有所帮助。