亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python服務器與android客戶端socket通信實例

系統 2230 0

本文實例講述了python服務器與android客戶端socket通信的方法。分享給大家供大家參考。具體實現方法如下:

首先,服務器端使用python完成,下面為python代碼:

復制代碼 代碼如下:
#server.py?
import socket?
def getipaddrs(hostname):#只是為了顯示IP,僅僅測試一下?
??? result = socket.getaddrinfo(hostname, None, 0, 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程序設計有所幫助。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 狠狠色噜噜狠狠狠狠97老肥女 | 好吊妞视频一区二区 | 另类欧美chinese | 色之综合网 | 亚洲第一永久色 | 精品久久久久久久一区二区伦理 | 欧美成人精品一级高清片 | 日韩 欧美 中文 | 午夜j | 九九这里有精品 | 在线视频一二三区2021不卡 | 亚欧有色亚欧乱色视频 | 亚洲第一激情 | 日日搞夜夜操 | 2021国产成人综合亚洲精品 | 欧美 日本 国产 | 久久精品视频大全 | 欧美成人aaaaa免费视频 | 爱唯侦察1024入口地址 | 国产一区二区三区免费在线视频 | 波多野结衣国产一区二区三区 | 久久精品免费i 国产 | 四虎影视免费 | 亚洲光棍天堂 | 日本免费一区二区三区毛片 | 在线视频中文字幕 | 国产成人丝袜精品自啪在线 | 自拍在线视频 | 国产免费久久精品 | 91九色视频在线观看 | 国产毛片久久久久久国产毛片 | 免费观看成人毛片 | 国产色婷婷精品综合在线观看 | 亚洲日韩成人 | 国产一级特黄高清在线大片 | 免费两性的视频网站 | 日本在线一卡二卡毛片 | 国产成人精品免费视频大全五级 | 99国产精品热久久久久久夜夜嗨 | 看黄色一级毛片 | 国产精品久久久久久久小唯西川 |