Android-программа для сокетов - PullRequest
0 голосов
/ 12 декабря 2011

Android-программа для простого сокета показывает ложь

 socket = new Socket(dstAddress, dstPort);
 ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(1024);
 byte[] buffer = new byte[1024];
         int bytesRead;
         InputStream inputStream = socket.getInputStream();
         while ((bytesRead = inputStream.read(buffer)) != -1) {
            byteArrayOutputStream.write(buffer, 0, bytesRead);
            response += byteArrayOutputStream.toString("UTF-8");
         }

1 Ответ

1 голос
/ 12 декабря 2011

Попробуйте использовать ip 10.0.2.xx (xx - это число) для эмулятора.

Каждый экземпляр эмулятора работает за службой виртуального маршрутизатора / брандмауэра, которая изолирует его от сетевых интерфейсов и настроек компьютера разработчика и от Интернета. Эмулируемое устройство не может видеть вашу машину разработки или другие экземпляры эмулятора в сети. Вместо этого он видит только то, что он подключен через Ethernet к маршрутизатору / брандмауэру

Ссылка: http://developer.android.com/guide/developing/devices/emulator.html#emulatornetworking

...