『壹』 android的socket怎樣判斷斷線
我開了兩個QQ測試,比如一個是A,一個螞逗是B,A和B是好友,A點擊離線,B幾乎是同時顯示A下線了。但是A被我用任務管理器給結束進程了,B還是顯示A在悶叢賣線,過了一段時間才顯示A掉線了。所以,我覺得還是用心跳包比較好鄭尺,每隔一段時間對集合里的socket進行通信,如果沒有接到回復超過一段時間,就認為它下線了。
『貳』 為什麼使用android藍牙連接過程中,socket會自己斷開呢
在AndRoid系統下,飢慧局藍牙默認連接是120秒!超過120移後藍牙會爛讓自碧謹動斷開的,為的是確保被連接手機的安全性!
『叄』 Android中TCP客戶端怎麼可以及時判斷與服務端的異常斷開呀 我想在客戶
直接用BufferedReader
如果readLine() 返回為null的話, 表示socket已經斷開連接了, 因為readLine() 是阻塞的, 就是等伺服器的數據輸出, 一直等到返回了回車換行, 才會繼續執行。
『肆』 android如何判斷socket斷開
無法直接判定對方已斷開或已關閉socket.
在對話協議,定義好心跳包的處理,定時向對方發心跳包,對唯者方必須應答,
在超過自已規定的時間(超時指橡薯值)後仍不如陵應答,就認為對方已斷開連接;
『伍』 android socket怎樣實現斷網重連
由於當網路出現故障時,recv要很長時間才能返回,如果你覺得這種方式不能接受,可以考慮select或者其他模型。
UINT CMonitorDlg::ThreadFunction(LPVOID pParam)
{
WSADATA wsaData;
WSAStartup(...);
while(1)
{
if (WaitSingleObject(hEventKill, 0) == WAIT_OBJECT_0) //
這個hEventKill到主線程里創建,用於控制線程退出
{
break;
}
SOCKET s; //創建套接字
int port=PORT;
int iLen; //從伺服器接收的數據長度
TCHAR recvbuf[BufferLen]; //接受數據的緩沖器
struct sockaddr_in serv1; //伺服器端地址
serv1.sin_family=AF_INET;
//需要連接的伺服器地址信息
serv1.sin_port=htons(port); //需要連接的伺服器地址信息
serv1.sin_addr.s_addr=inet_addr(p->Ip); //將命令行的IP地址轉化為二進製表示的網路位元組順序IP地址
s=socket(AF_INET,SOCK_STREAM,0);
if(s==INVALID_SOCKET)
{
AfxMessageBox("socket()failed");//套接字失敗
return 0;
}
if(connect(s,(struct
sockaddr*)&serv1,sizeof(serv1))==INVALID_SOCKET)
{
int
b=WSAGetLastError();
//連接失敗
}
else
{ //連接成功
p->connectstate=true;
do{
在此循環體中我接收數據並對數據做處理(省略部分代碼)
iLen=recv(s,recvbuf,sizeof(recvbuf),0); //接收套接字中的數據放入recvbuf1緩沖區
if(iLen==0) // server調用了close
{
strtempMsg.Format(_T("局 %s 數據傳送結束"),p->Name);
break;
//return 0;
}
else
if(iLen==SOCKET_ERROR) // 網路錯誤
{
int
err=WSAGetLastError();
if (err==WSAECONNRESET
||err==WSAECONNABORTED)
strtempMsg.Format(_T("%s連接中斷"),p->Name);
p->connectstate=false;
break; //
退出do-while循環准備重連
// return -2; //連接異常中斷
}
......
.....省略代碼
}while//do-while
} //else
closesocket(s); //關閉套接字
} // end of
while(1)
WSACleanup();
return 0;
}
『陸』 安卓手機socket未連接怎麼辦
安卓手機socket未連接的解決方法是:
1、另開一個線程去做網路連接的操作早凳。
2、在activity類陸高旅中的onCreate方法中添加strict代碼念空。
『柒』 android socket 出現斷開~求大神指導
同求同求同求同求同求同求同求同求