Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
qvazar
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 37
#1

Не удается подключиться к телефону по сокетам

11.06.2013, 14:05. Просмотров 525. Ответов 2
Метки нет (Все метки)

Есть приложение на android, в нем кроме главного потока есть поток, который работает с сетью, в нем я создаю сокет, задаю ему порт и ставлю на прослушку подключений методом accept().
Есть также клиент на c#, в котором я задаю ip и порт телефона и пытаюсь подключиться к телефону, но он выбрасывает мне исключение "подключение не установлено т.к конечный компьютер отверг запрос на подключение".
В связи с чем устройство на android может не давать подключиться к себе? В манифесте прописал разрешения INTERNET, ACCESS_WIFI_STATE и ACCESS_NETWORK_STATE.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2013, 14:05
Ответы с готовыми решениями:

Не могу подключиться к телефону
Клиент: private void button1_Click(object sender, EventArgs e) ...

Не удается подключиться к базе данных
public class DisplayActivity extends Activity { ListView list; ...

Не удается подключиться к БД
Добрый день. Написал приложение для работы с DerbyDB. Из Idea оно запускается и...

Не удается подключиться к Wi-Fi
Обновила антивирус (Аваст), в самый последний момент сглючил, все зависло,...

Не удается подключиться к бд
Всем здрасти! Данные следующие: Delphi 10.1 Berlin (скачана не так давно,...

2
GiGaBiTe911
24 / 24 / 1
Регистрация: 04.02.2013
Сообщений: 132
Записей в блоге: 1
11.06.2013, 16:43 #2
писал такую же "систему" все работает. и если меня не подводит память то запускать на прослушку нужно не методом accept(). если еще не решили проблему - могу посмотреть исходники.
прошу прощения но у меня система работала немножко иначе. телефон подключался к серверу на PC и слушал порт.
0
qvazar
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 37
11.06.2013, 17:26  [ТС] #3
Часть кода клиента на c#:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 class Connection
    {
        public Connection(String ip, String port)
        {
            Ip = IPAddress.Parse(ip);
            Port = Convert.ToInt32(port);
        }
 
        public IPAddress Ip
        {
            get;
            set;
        }
 
        public Int32 Port
        {
            get;
            set;
        }
 
        public Boolean ConnectionError;
 
        public Socket S;
 
        public void ConnectToServer()
        {
            IPEndPoint ipe = new IPEndPoint(Ip, Port);
            S = new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
            try
            {
                S.Connect(ipe);
            }
            catch (SocketException e)
            {
            }
        }
В главном окне пользователь задает IP и порт телефона, создает экземпляр класса Connection и вызывает метод ConnectToServer, но срабатывает SocketException.
Код сервера на android:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
private void networkOperations()
    {
        Thread networkThread = new Thread (null, doBackgroundThreadProcessing, "Network");
        networkThread.start();
    }
    
    private Runnable doBackgroundThreadProcessing = new Runnable() 
    {
        public void run() {
            backgroundThreadProcessing();
        }
    };
    
    private void backgroundThreadProcessing()
    {
        Socket s = null;
        ServerSocket ss = null;
        try {
            ss = new ServerSocket(8867);
        } catch (IOException e) {
            e.printStackTrace();
        }
        while(!Thread.currentThread().isInterrupted())
        {
            try {
                if (s == null)
                    s = ss.accept();
                BufferedReader input = new BufferedReader(new InputStreamReader(s.getInputStream()));
                String st = null;
                st = input.readLine();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
Метод networkOperations() вызывается в методе onCreate() в MainActivity.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.06.2013, 17:26

Не удается подключиться к .......
выдает такое сообщение!!! че делать помоги плиизззз!!!!!

Не удается подключиться к wi-fi
День добрый. Возникли проблемы с вай-фаем. ПК не подключается к общажному...

Не удается подключиться к БД
Добрый всем день. Возникла проблема, с подключением к бд sqlite. После запуска...


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

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

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