Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java Мобильная разработка (Android)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.10.2016, 20:02   #1
JanCover
Новичок
Джуниор
 
Регистрация: 09.03.2016
Сообщений: 10
По умолчанию Перенос кода клиент/сервера на Android

Здравствуйте =)
Начал изучать андроид и возникла такая проблема, а именно перенос Java кода в код приложения
У меня есть работающий код сервера и клиента, а именно на сервере пишется с клавиатуры 1 или 0 и отправляется клиенту, клиент же выводит у себя значение статуса в зависимости от присланной переменной
1 - dor_open
0 - dor_close

Сервер
Код:
import java.net.*;
import java.io.*;
public class Server {
    public static void main(String[] ar)    {
        int port = 6666; // случайный порт (может быть любое число от 1025 до 65535)
        try {
            ServerSocket ss = new ServerSocket(port); // создаем сокет сервера и привязываем его к вышеуказанному порту
            System.out.println("Waiting for a client...");
 
            Socket socket = ss.accept(); // заставляем сервер ждать подключений и выводим сообщение когда кто-то связался с сервером
            System.out.println("Got a client :) ... Finally, someone saw me through all the cover!");
            System.out.println();
 
            // Берем входной и выходной потоки сокета, теперь можем получать и отсылать данные клиенту.
            InputStream sin = socket.getInputStream();
            OutputStream sout = socket.getOutputStream();
 
            // Конвертируем потоки в другой тип, чтоб легче обрабатывать текстовые сообщения.
            DataInputStream in = new DataInputStream(sin);
            DataOutputStream out = new DataOutputStream(sout);
 
            BufferedReader keyboard = new BufferedReader(new InputStreamReader(System.in));
            String dor = null;
 
            while (true) {
                dor = keyboard.readLine(); // ждем пока пользователь введет что-то и нажмет кнопку Enter.
                out.writeUTF(dor); // отсылаем введенную строку текста клиенту.
                out.flush(); // заставляем поток закончить передачу данных.
            }
        } catch(Exception x) { x.printStackTrace(); }
    }
}
Клиент
Код:
import java.net.*;
import java.io.*;
enum Status {dor_close, dor_open}
 
public class Client {
    public static void main(String[] ar) {
        int serverPort = 6666; // здесь обязательно нужно указать порт к которому привязывается сервер.
        String address = "127.0.0.1"; // это IP-адрес компьютера, где исполняется наша серверная программа.
        // Здесь указан адрес того самого компьютера где будет исполняться и клиент.
 
        try {
            InetAddress ipAddress = InetAddress.getByName(address); // создаем объект который отображает вышеописанный IP-адрес.
            System.out.println("Any of you heard of a socket with IP address " + address + " and port " + serverPort + "?");
            Socket socket = new Socket(ipAddress, serverPort); // создаем сокет используя IP-адрес и порт сервера.
            System.out.println("Yes! I just got hold of the program.");
 
            // Берем входной и выходной потоки сокета, теперь можем получать и отсылать данные клиентом.
            InputStream sin = socket.getInputStream();
            OutputStream sout = socket.getOutputStream();
 
            // Конвертируем потоки в другой тип, чтоб легче обрабатывать текстовые сообщения.
            DataInputStream in = new DataInputStream(sin);
            DataOutputStream out = new DataOutputStream(sout);
 
            Status status = Status.dor_close;
            System.out.println(status);
 
            while (true) {
                String dor = in.readUTF(); // ожидаем пока сервер пришлет строку текста.
                out.flush(); // заставляем поток закончить передачу данных.
                if (Status.dor_close == status && "1".equals(dor)) {
                    status = Status.dor_open;
                    System.out.println(status);
                    continue;
                } else if (Status.dor_open == status && "0".equals(dor)) {
                    status = Status.dor_close;
                    System.out.println(status);
                    continue;
                }
            }
        } catch (Exception x) {
            x.printStackTrace();
        }
    }
}
Что мне нужно от андроида
Нужно перенести код в андроид приложение так, что бы устанавливалось соединение с сервером и на сервере вводилась переменная и отправлялась на приложение, а в приложении в зависимости от присланной переменной менялся цвет небольшого индикатора
0 - красный цвет
1 - зелёный цвет

Что я прошу от тебя, читатель, что бы ты помог мне с написанием приложения или помог с нужно литературой (потому что я не нашёл ничего такого :/ ) и подсказал нужное ПО, что бы там писать (пользуюсь Android Studio, может нормально )
JanCover вне форума Ответить с цитированием
Старый 09.10.2016, 16:40   #2
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

изучай андройд api. сверхсложного там ни чего нет, тем более если джаву знаешь. вот тут вроде все доходчиво объясняется http://startandroid.ru/ru/uroki/vse-uroki-spiskom.html
SAMOUCHKA вне форума Ответить с цитированием
Старый 11.10.2016, 20:58   #3
New man
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 774
По умолчанию

Сервер на Андроид. Зачем?
a.k.a. Angelicos Phosphoros
Мой сайт
New man вне форума Ответить с цитированием
Старый 11.10.2016, 21:02   #4
JanCover
Новичок
Джуниор
 
Регистрация: 09.03.2016
Сообщений: 10
По умолчанию

уже не важно, это просто хотел попробовать соединить это, вот и всё
JanCover вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отправка данных с сервера на android sinestro Мобильные ОС (Android, iOS, Windows Phone) 3 13.04.2015 16:10
UDP клиент за NAT (с использованием STUN сервера) Vad_OS C# (си шарп) 0 03.01.2015 21:35
Клиент не получает данные с сервера gunsoy C/C++ Сетевое программирование 7 06.07.2014 10:19
Перенос сервера 1С MisterKoK Софт 0 23.11.2009 16:42
обновление в блоге - Создание клиент-сервера Pblog Обсуждение статей 0 03.10.2007 17:12