Android-игра, локальная и онлайн, с клиентами, которые можно использовать в качестве серверов, без дублирования кода - PullRequest
0 голосов
/ 27 марта 2012

Я хочу написать приложение для Android, карточную игру, в которую можно играть как локально, так и онлайн.Это означает, что у нас есть клиенты (телефоны Android) и серверы.В идеале, телефон Android должен быть в состоянии использоваться в качестве сервера и хоста игры (и играть в нее одновременно).Я не хочу дублировать код между сервером и клиентом.

Вот что я имел в виду: наличие в приложении серверной части, которая могла бы выполняться независимо самим приложением или безприложение (на компьютере).В локальной игре поток будет запущен для сервера, а другой - для клиента (который взаимодействует с локальным сервером через localhost).В онлайн-игре удаленный сервер работает, и локальный клиент связывается с ним через сеть.

Мои вопросы:

  1. Будет ли мое приложение сможет взаимодействовать споток, который приходит от себя через localhost?
  2. Могу ли я иметь все приложение в качестве сервера?На телефоне запускается серверный поток, затем клиентский поток (нужен ли он мне?).На удаленном сервере (настольном компьютере) я бы запускал только серверный поток, без всякой Android-вещи.
  3. У вас есть другая идея?

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

1 Ответ

0 голосов
/ 27 марта 2012

Да, ваше приложение может связываться с собой через TCP-сокеты, это не должно быть проблемой.Я бы посоветовал вам взглянуть на помещение большей части функциональности сервера в jar-файл, тогда у вас будет Android APK и, возможно, отдельный интерфейс Java для вашего рабочего стола.Скорее всего, вам понадобится небольшой код хостинга, специфичный для каждой платформы.Возможно, имеет смысл поместить ваш сервер в Android Service, например, если вы хотите иметь возможность хостинга в фоновом режиме.

...