Возможно ли написать клиент сервер для смартфона?

Возможно ли написать приложение для смартфона которое является как клиентом так и сервером?
Приложение должно работать на 2-х произвольных смартфонах которые подключены к 3G или wifi.
Т.е. чтобы можно было взять 2 смартфона и передавать данные между ними без связуещего сервра.
При этом ip адреса известны и прописываются в момент запуска приложения.
Вот только не понятно, а как быть если ip динамический или этотне важно?
И чем может быть ограничена работа такого приложения?
  • Вопрос задан
  • 1042 просмотра
Пригласить эксперта
Ответы на вопрос 5
И чем может быть ограничена работа такого приложения?

Работа такого приложения [без связующего сервера] может быть ограничена и будет ограничена фактом использования серых IP-адресов в сети мобильного провайдера, а также более агрессивными дефолтовыми настройками маршрутизации, которые врядли допустят TCP-подключение одного клиентского устройства к другому.

P.S. Обращаю внимание на условия "произвольный смартфон", "3G", "без связующего сервера". Для меня "произвольный" - это когда один смартфон сидит в Волгограде, а другой - в Мурманске.
Ответ написан
ACCNCC
@ACCNCC
Делаю игры!
Нельзя! Смотрите в сторону webrtc
Ответ написан
Комментировать
@aol-nnov
peer to peer, но всё равно на старте потребуется третья сторона
Ответ написан
Комментировать
uvelichitel
@uvelichitel
habrahabr.ru/users/uvelichitel
Разумеется возможно. Такие приложения есть https://play.google.com/store/apps/details?id=com.... В пределах прямой видимости вам вообще не нужна сторонняя сеть - wifi spot можно поднять на устройстве. Если желаете через intra/internet, то servis_disvovery и name_resolving выполняется средствами провайдера google/apple/MTS etc. Серверы на androide поднимаютя, как на любом linux, проверено лично.
Ответ написан
Комментировать
StrangeAttractor
@StrangeAttractor
Конечно можно. Не вижу никакой проблемы. Разве что работать будет либо только внутри одной локальной сети (например дома сидя с гостем/соседом на одном WiFi или, скажем, в поезде настроив свой смарт как точку перестреливаться - кстати очень удобно должно быть для многопользовательских игрушек без Интернет, хотелось бы чтобы было побольше таких) либо в условиях прописанного на маршрутизаторе проброса порта.

PS: Рекомендую сразу встроить в ваше приложение показ собственного IP который надо сообщить клиенту а то лично я, например, так и не нашёл ни стандартной функции (в смысле не в SDK, а в самом UI Android) ни хотя бы одного удобного приложения это делающего.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы