[英]Android new Socket error
我正在嘗試在樹莓派和android設備之間創建WiFi連接。 我是設置WiFi連接的初學者,但是找到了一些建立連接的在線代碼。 這里在pi上運行服務器C代碼:
double C[SIZE];
char D[SIZE];
bool bResult = false;
/* if no command line arguments passed, we'll default to
these two port number */
int port = 5710;
int dataport = -1;
if (argc > 1)
{
port = atoi(argv[1]);
if (argc > 2)
dataport = atoi(argv[2]);
}
printf("Server, listening on port %d, datagram port %d\n", port, dataport);
fflush(NULL);
Server mylink(port, dataport, &bResult);
if (!bResult)
{
printf("Failed to create Server object!\n");
return 0;
}
/* put some dummy data in our arrays */
for (int i = 0; i < SIZE; i++)
{
C[i] = (double) i*i+0.5;
D[i] = i;
}
printf("Server, waiting for connection...\n");
fflush(NULL);
mylink.Connect();
printf("Server, got a connection...\n");
fflush(NULL);
for (int i = 0; i < NUM_PACKS; i++)
{
printf("Server, sending bytes, iteration %d...\n", i);
fflush(NULL);
mylink.SendBytes(D, SIZE);
printf("Server, receiving doubles, iteration %d...\n", i);
fflush(NULL);
mylink.RecvDoubles(C, SIZE);
}
printf("Server, closing connection...\n");
fflush(NULL);
mylink.Close();
printf("Server, done...\n");
fflush(NULL);
return 0;
這是連接到樹莓派服務器的android代碼:
Socket myClient = new Socket("192.168.XXX.XXX", 5710);
SocketAddress remotAddrr = new InetSocketAddress("192.168.XXX.XXX", 5710);
myClient.connect(remotAddr,10000);
booleanfeedbackconnec = myClient.isConnected();
int feedbackgetport = myClient.getPort();
我認為代碼的問題是這一行:
Socket myClient = new Socket("192.168.XXX.XXX", 5710);
它往往會引發異常,有時甚至會停止應用程序。 我已請求清單文件的權限,但無法弄清楚此行有什么問題
謝謝
使用此代碼,您可以將套接字連接到給定的機器和端口
Socket myClient = new Socket("192.168.XXX.XXX", 5710);
然后,您創建一個端點並嘗試再次連接
SocketAddress remotAddrr = new InetSocketAddress("192.168.XXX.XXX", 5710);
myClient.connect(remotAddr,10000);
僅其中之一就足夠了。
看一下Socket類:
插座()
創建一個新的未連接的套接字
套接字(字符串dstName,int dstPort)
創建一個新的流媒體套接字,該套接字連接到由參數dstName和dstPort指定的目標主機。
如果在使用第二個構造函數后將調用: Socket.connect(SocketAddress remoteAddr,int timeout)
您將得到IOException:
如果套接字已經連接或連接時發生錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.