0
我有一個簡單的客戶端,我正在測試從我的android設備,我正在測試一個telnet服務器調用telehack.com。問題是當我從菜單項列表中請求某個選項時,數據發送但沒有收到。 選項是advent(巨大的冒險)。我嘗試了各種實現(套接字,套接字通道和選擇),並在發送到來後仍然遇到同樣的問題,沒有收到數據,菜單中的其他選項正常工作。更糟糕的是,我已經從playstore下載了各種telnet客戶端,他們似乎有同樣的問題。 (除了似乎使用C++ NDK套接字庫的Mobile Telnet)。android插座沒有收到
同時在Windows上查看和Wireshare和telnet客戶端顯示數據被髮送回來沒有什麼不尋常的。
public void run() {
mRun = true;
try {
Socket sc = new Socket(SERVER_IP, SERVER_PORT);
inBuffer = new DataInputStream(sc.getInputStream());
outBuffer = new DataOutputStream(sc.getOutputStream());
Log.e("TCP Client", "C: Connecting...");
if (mConnectionListener != null)
mConnectionListener.connectionStatusChanged(true);
sc.setSoTimeout(5*60*1000); //Socket timeout = 4 minutes
sc.setTcpNoDelay(true);
sc.setKeepAlive(true);
try {
while (mRun) {
int size = inBuffer.available();
if (size > 0)
{
byte[] readBuf = new byte[size];
inBuffer.read(readBuf);
你可能會多一點具體的關於你的問題,包括你所談論的範圍內的全部源代碼(看起來像它的不完整)。 – gabriel 2015-03-13 12:19:59
您可以嘗試在Android模擬器上運行此操作,並通過主機上的數據包嗅探,或者通過可以嗅探的wifi路由器上的設備,或者通過您的開發機器的以太網連接的WiFi共享來嗅探。 – 2015-03-13 12:20:38