Страницы

Поиск по вопросам

понедельник, 6 января 2020 г.

Отправка команд на компьютер из Android приложения

#android #cpp #windows #приложение


Здравствуйте, у меня такой вопрос.
Возможно ли из своего Android приложения отправлять команды на компьютер (через Wi-Fi
или Bluetooth), на котором так же будет установлена программа принимающая данные команды
(на C++ к примеру) ?

Если имеет значение ОС на компе, то интересует Windows.

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

Я предполагаю что это возможно, но вот проблема в том что не могу найти как это реализовывается.
Могли бы вы подсказать в какую сторону копать что бы понять как такое можно сделать ?
В какую сторону искать что бы понять как с android приложения отправлять команды,
и в какую сторону искать что бы понять как их принимать на  С++ ?

Спасибо.
    


Ответы

Ответ 1



В случае если компьютер и девайс находятся в одной сети все предельно просто. На компьютере запускается приложение которое прослушивает определенный заранее выбранный порт, например по протоколу UDP. Порт можно выбрать любой от 1 до 65'535, обычно рекомендуют для домашнего использования больше 60'000, т.к. они обычно не заняты. Далее на девайсе посылаем бродкаст на выбранный порт с командой. В самом простом случае это может быть строка с кодовым словом или вообще JSON. Преимущество UDP в том что не обязательно указывать ip адрес получателя, сообщение разошлется по всей сети, но поймет его только тот кто слушает выбранный порт и знает формат команды.

Ответ 2



На C пишется Web-серверер (или используется готовый), на андроиде приложение отправляет ему GET/POST-запросами команды. Я, правда, сразу вижу проблему определения адреса сервера... Можно обойтись и без специального приложения на Android, если все действия будут в браузере выполняться.

Ответ 3



Такое можно написать на сокетах (использовать TCP/IP протокол). Android будет выступать сокет-клиентом, а сервер - сокет-сервером. В таком случае не только Andorid может посылать команды, но и сервер! Реализовать на Web-сервере (протокол HTTP). Кстати, например, вот бесплатный многопоточный веб-сервер: https://github.com/sitev/cjNetwork (сам писал ))) ). Можно взять другой бесплатный, более надёжный, например, мангуста: https://github.com/cesanta/mongoose CGI/FastCGI/SCGI

Ответ 4



Можно через Jabber ботов организовать, можно даже через email

Комментариев нет:

Отправить комментарий