2015-05-28 6 views
2

Я разработал простую карточную игру, основанную на Скопи. Теперь я хочу обновить свое приложение для 1 vs 1 онлайн-игры. Я не новичок в Java, я знаю сокеты. Мне было интересно, есть ли лучший способ начать эту работу.Лучший подход к созданию онлайн-игры?

EDIT: это игра в очередь, игроки просто обмениваются строкой, представляющей карту.

+1

Этот вопрос слишком широк, и заключение по ним (без единого ответа). Не подходит для StackOverflow. –

+0

Посмотрите здесь: https://stackoverflow.com/questions/29545597/multiplayer-game-in-java-connect-client-player-to-game-that-was-created-by-ot/3082a0890#30820890 И где началось? Взгляните сюда: https://stackoverflow.com/questions/30564281/xcode-mass-multiplayer-not-what-youre-probably-thinking/30818450#30818450 – Tirz

ответ

1

Если его игра в очередь, вам не нужна сокет, сокет предназначен для взаимодействия в реальном времени. И проще всего настроить обычный HTTP-запрос, чем сокет.

Если вы решите пойти на сокет, вам понадобится сервер node.js, и есть некоторые плагины для подключения к разъему Android. В основном эти плагины создают слушателя, который получает сообщения от сервера и запускает обратный вызов (который вы определяете) на основе имени сообщения.

Другой способ пойти, это не так профессионально, но его проще, использовать GCM (услуга уведомления об андроиде) или parse.com. Таким образом вы пропустите настройку сервера, эти apis в основном запускают сервер node.js, и вы можете определить некоторые пользовательские сообщения, а затем просто обрабатывать сообщения с помощью плагина сокета, как я уже сказал.

EDIT

Использование GCM вы можете отправлять сообщения непосредственно с вашего устройства, используя внутренний (на устройстве) сервера Java. В официальном сайте разработчиков Android есть несколько примеров. Кстати, you can implement socket without node.js too

+0

Я не понимаю, как это принятый ответ. «* Вам понадобится сервер node.js *» - это просто неверно. То, что вы написали, - это мнение (на самом деле более одного мнения). –

+0

Вы правы, вы можете разработать сервер сокетов, используя другие языки/подходы, мою ошибку. Но для остальных, я думаю, я даю хорошее решение для него, используя GCM, и, вероятно, многие люди найдут этот ответ полезным из-за этого не столь распространенного подхода – sagits

2

Я бы сделал это с веб-сервисом RESTful. На мой взгляд, сделать это с помощью сокета. И с веб-сервисом RESTful вы можете легко реализовать свою игру для других платформ, таких как iOS или WP.

С наилучшими пожеланиями