С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
VladEv1L
0 / 0 / 0
Регистрация: 31.01.2015
Сообщений: 1
1

Android приложение с использованием сокетов из определенного класса

31.01.2015, 18:26. Просмотров 388. Ответов 0
Метки нет (Все метки)

Здравствуйте, столкнулся с некой проблемой создания клиент-сервер соединения через сокеты в андроид приложении.
Итак - имеется 2 класса:
reg.java - он же является исполнителем определенного окна в приложении, где находятся разные условия.
CONservice.java - Исполнитесь, который нужно вызвать в файле reg.java и в котором идет попытка соединиться с сервером.
CONservice.java :
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package service;
 
import java.net.InetAddress;
import java.net.Socket;
 
public class CONservice {
     public void go(){
         int serverPort = 5555;
            String address = "localhost";
            try{
                InetAddress ipAddress = InetAddress.getByName(address);
                Socket socket = new Socket(ipAddress, serverPort); 
                
            }catch(Exception e){
                e.printStackTrace();
            }
        }
     public static void main(String[] args) {
            
         CONservice client = new CONservice();
            client.go();
        }
}
В классе reg.java есть определенное условие при нажатии на кнопку, оно работает. Я добавил туда:
Java
1
2
3
                CONservice client = new CONservice();
                client.go();
                InfoText.setText("Код 3");
Сам сервер, который работает и ожидает подключений:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.net.*;
import java.io.*;
public class Server {
    public static void main(String[] ar) {
int port = 5555;
try 
{
      ServerSocket ss = new ServerSocket(port);
      System.out.println("Waiting for a client...");
      Socket socket = ss.accept();
      System.out.println("Client!");
      System.out.println();
return;
 
}
catch(Exception x) { x.printStackTrace(); 
     
    }
    }
}
Не знаю, правильно ли выполнен код, но при нажатии кнопки, на экран выводится Код 3, а подключения к серверу отсутствует.
Я написал отдельный java класс клиента для проверки, вдруг проблема уже не в коде:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.net.*;
import java.io.*;
 
public class Client {
    public static void main(String[] ar) throws Exception{
        int serverPort = 5555;
        String address = "127.0.0.1";
        try {
            InetAddress ipAddress = InetAddress.getByName(address);
            Socket socket = new Socket(ipAddress, serverPort);
        } catch (Exception x) {
            x.printStackTrace();
        }
    }
}
Но этот клиент работает нормально и подключается к серверу без проблем.
Подскажите, что не так, я еще новенький и многое не знаю, но хотелось бы понять причину проблемы, ибо без решения её я не могу дальше поэтапно делать приложение. Помогите пожалуйста.

Добавлено через 1 час 14 минут
P.S:
По найденным примерам немного подкорректировал код CONservice.java:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package service;
import java.net.Socket;
import java.io.*;
public class CONservice {
    final Socket s; 
 
    public CONservice(String host, int port) throws IOException {
        s = new Socket(host, port);
    }
    public void run() {
 
    }
 public static void main(String[] args)  {
        try {
            new CONservice("localhost", 5555).run();
        } catch (IOException e) {
        }
    }
 
}
В файл reg.java добавил:
Java
1
2
3
4
try {
                new CONservice("localhost", 5555).run();
                } catch (IOException e) {
                }
Исход в приложении такой же - не работает.
Попробовал скомпилировать файл коннект отдельно от проекта, и при его запуске клиент коннектится. Теперь я уже точно не могу понять в чем дело. Как вызвать этот CONservice в reg.java?

Добавлено через 1 час 14 минут
P.S.
Сделал ну еще проще - Вставил вначале после OnCreate
Java
1
2
3
try{
            Socket socket = new Socket("127.0.0.1", 5555);
            }catch(UnknownHostException e){}catch(IOException e){}
При запуске приложения он должен попытаться подключится... Без толку... И как тут копать?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.01.2015, 18:26
Ответы с готовыми решениями:

Как приложение Android написать на С++ в Android NDK, чтоб получить *.apk? Нужен мануал
Уже не в первый раз задаю вопрос. Молчание. В лучшем случае - "RTFM" и точка....

Не могу запустить Android приложение. "Unable to resolve target 'android-8'"
Не могу запустить Android приложение. Вроде всё установил, кучу всяких проблем...

Android приложение
Как сделать так что бы при нажатии на кнопку "описание" из первой картинки...

Android приложение
Сразу извиняюсь за корявость объяснения моей проблемы !) Я создаю приложение с...

Android-приложение
Здравствуйте! Имеется база данных в Postgresql, к которой, я приконнектился...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.01.2015, 18:26

Приложение на Android
Здравствуйте. Сразу говорю в Java плохо разбираюсь. Задание такое: У меня...

Приложение под Android
Хочу написать приложение под Android, интересуют такие вопросы: 1)Как(если...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru