研究了一天的Android做客戶端,workerman做服務(wù)器端,兩者之間可以正常的通訊,唯一的缺點(diǎn)是不能進(jìn)行長(zhǎng)連接,客戶端剛剛連接上來,立馬就斷開連接了,怎樣保持他們之間的長(zhǎng)連接呢,
服務(wù)端和客戶端都不關(guān)閉連接,并且客戶端和服務(wù)端之間定時(shí)發(fā)送心跳數(shù)據(jù)保持連接(防止連接長(zhǎng)時(shí)間不通訊被路由節(jié)點(diǎn)清理),那么就是長(zhǎng)連接。
斷開的原因多是socket連接長(zhǎng)時(shí)間空閑被防火墻路由節(jié)點(diǎn)給KO了, 所以若要保持長(zhǎng)連接,應(yīng)用層必須添加心跳檢測(cè)。心跳檢測(cè)參考手冊(cè): http://doc2.workerman.net/heartbeat.html