ServerSocket не принимается на эмуляторе дроида - PullRequest
5 голосов
/ 10 февраля 2012

Я пытаюсь настроить базовое сетевое соединение, используя эмуляторы дроидов с eclipse, но у меня проблемы.Сервер достигает строки "Socket s = ss.accept ();"и ожидает подключения клиента, но клиент не может подключиться.

Теперь я смог подключить мой клиент к созданному мной питон-серверу и сделать то же самое, что и сервер, который я сделал для дроида.Я разрешил использование Интернета на клиенте и сервере в AndroidManifest, поэтому я не знаю, почему этот сервер не работает на моем эмуляторе дроидов.

Sever:

       ServerSocket ss = new ServerSocket(8888);
            while(!end){
                    Socket s = ss.accept();
                    Log.v("Server","Connection found");
                    BufferedReader input = new BufferedReader(new InputStreamReader(s.getInputStream()));
                    PrintWriter output = new PrintWriter(s.getOutputStream(),true); 
                    String st = input.readLine();

Клиент:

        Socket s = new Socket(MYIPADDR,8888);

        BufferedReader input = new BufferedReader(new InputStreamReader(s.getInputStream()));

Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

1 голос
/ 30 мая 2012

Просто добавьте к ответу Луки, поскольку вы, вероятно, столкнетесь с будущими проблемами:

Если вы используете сокеты, вы можете использовать библиотеку, чтобы помочь со всем обслуживанием, которое действительно требуется длястабильное соединение.

Хорошая библиотека для обработки соединения будет: https://github.com/koush/android-websockets

Она сохранит соединение и его довольно просто изменить, чтобы он соответствовал вашим потребностям отправки,Единственное, чего не хватает, - это функции обратного вызова для обработки входящих данных, но это было бы гораздо проще реализовать, чем полностью настроить что-то с нуля для обработки всего соединения.

0 голосов
/ 10 февраля 2012

Может ли это быть проблемой Ame: Android - сокет сервера .Преимущественно первая часть вопроса и принятый ответ.

...