Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.86
joker26rus
Сообщений: n/a
#1

Нужно по протоколу tcp-ip отправлять на определенный порт данные - Программирование Android

31.07.2013, 20:20. Просмотров 4423. Ответов 6
Метки нет (Все метки)

нужно по протоколу tcp-ip отправлять на определенный порт данные.
Чтобы сервер отвечал по этим данным набором своих "ответных" данных.
Как это реализовать на Android.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.07.2013, 20:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужно по протоколу tcp-ip отправлять на определенный порт данные (Программирование Android):

Как правильно принять данные по TCP протоколу функцией recv? - C++
Всем добрый вечер! Пытаюсь реализовать получение данных с устройства через TCP. linux OS. Данные принимаются. Только не всегда...

Нужно отправлять данные с радиокнопок в Excel - PHP
Здравствуйте очень прошу срочной помощи, мне надо добавить кнопку сабмит и чтобы ответы пользователя куда то высылались, хоть на страницу...

Прием данных по протоколу TCP - C++
Делаю программу, которая принимает данные по TCP протоколу с помощью сокета. Данные представляют собой пакеты размером 40 байт. Посылаются...

.NET 3.x Ошибка соединения по протоколу TCP - C# WCF
WCF соединений по TCP делаю по примеру и не получается вот пример конфига <?xml version="1.0" encoding="utf-8" ?> ...

Нужно считать данные из файла и заменить определенный текст на заданный - C++
Есть файл с таким содержимым: (в нем записаны вещ. числа) Пример: 1.000 1.111 2.222 3.333 4.444 5.555 6.555 4.333 3.333 4.444 6.666...

Может ли TCP сервер отправлять JSON? - C++
Может ли TCP сервер в ответ на запросы клиента отправлять JSON который надо распарсить??

6
MegaSinner
91 / 87 / 3
Регистрация: 09.04.2010
Сообщений: 746
02.08.2013, 20:49 #2
Коннект:
Java
1
2
3
4
5
6
7
        try{
            sc = new Socket("айпишник", Integer.parseInt("порт"));
            sc.setKeepAlive(true);
            is = sc.getInputStream();
            os = sc.getOutputStream();
            ///System.out.println("Connected!");
        }catch(Exception x)
Чтение:
Java
1
2
3
4
5
6
7
8
while (is.available()==0)
            {
                try{Thread.sleep(50);
                }catch (Exception cc){
                }
            }
            byte[] baray= new byte[1024];
            is.read(baray, 0, is.available());
Запись:
Java
1
os.write("строчка".getBytes());
sc, is и os - объяви пабличные, там, где нужно, и соответственного типа. Удачи.

EDIT: если твой сервер отправляет большие данные, например фотки, то первым делом пусть отправляет её размер в байтам и только затем, дождавшись ответа, пересылает фотку. Зачем так: потому что, есть размер буфера и данные передаются частями... Но байты(комманды) нужно ещё правильно декодировать в UTF-строчки, но это уже другой разговор..
3
The13
0 / 0 / 0
Регистрация: 30.07.2013
Сообщений: 3
02.08.2013, 21:13 #3
Спасибо.
0
MegaSinner
91 / 87 / 3
Регистрация: 09.04.2010
Сообщений: 746
28.08.2014, 18:44 #4
The13, Pingvinoff, _Night_Scream_, joker26rus.
Небольшой бонус, по существу:
не забываем про:
1) В манифесте должно быть разрешение:
XML
1
<uses-permission android:name="android.permission.INTERNET" />
2) Нельзя ломиться в инет с основного потока - для этого есть AsyncTask, Thread и т.д..
3) Учитывая пункт №2, обновлять UI приходится так же в отдельном потоке, но с "примочками"(handler):


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
private void UpdateUI() {
        final Handler handler = new Handler();
        Runnable runnable = new Runnable() {
            public void run() {
                while (!stop_threads) {
                    try {
                        Thread.sleep(200);//вот это значение меняем под свои нужды
                    }
                    catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    handler.post(new Runnable(){
                        public void run() {
                            if (current_line.length() > 0)
                            {
                            выводим что-то куда-то
                            current_line = "";
 
                            }
 
 
                            }
                        }
                    });
                }
            }
        };
        new Thread(runnable).start();
    }
На очень старых версия ОS могут быть проблемы с запуском нескольких АсинкТасков, в то время, как Thread'ы будут работать перфектно.. Приятного кодинга..
0
Pablito
29.08.2014, 09:53
  #5

Не по теме:

любитель некропостинга?

0
MegaSinner
29.08.2014, 10:54
  #6

Не по теме:

Цитата Сообщение от Паблито Посмотреть сообщение
любитель некропостинга?
- Нет.

0
MegaSinner
29.08.2014, 11:01     Нужно по протоколу tcp-ip отправлять на определенный порт данные
  #7

Не по теме:

неа

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.08.2014, 11:01
Привет! Вот еще темы с ответами:

Не хочет соединяться по протоколу TCP [Indy] - Delphi
Здравствуйте, я делаю две программы, одна сервер а другая клиент. Но они никак не соединяются. Как быть. Вот коды обеих программ....

Узнать, доступен ли сокет по протоколу TCP - C++
Добрый вечер, необходимо узнать, доступен ли сокет в данный момент (не оборвалось ли соединение). Есть мысль писать в сокет какие либо...

Взаимодействие iOS и Windows CE по протоколу TCP/IP - Objective-C
Всем добрый день! Помогите, пожалуйста, бьюсь уже две недели с реализацией межсетевого взаимодействия iPad и Windows CE 5.0. Программы с...

PHP АПИ сервер по протоколу TCP - PHP
Привет. Дайте пожалуйста совет по технологиям для данной задачи Задача следующая: Есть у нас, например, андроид приложение которое...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.08.2014, 11:01
Ответ Создать тему
Опции темы

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