title: Ideal approach to create multi-player game server for Android (a game with very basic graphics)
body: <p>I'm working on an Android game based on Playing Cards (<a href="http://en.wikipedia.org/wiki/Contract_bridge" rel="nofollow">Bridge</a>, to be precise), which can be played by <strong>four</strong> players at time. And there'll be a server available via Web, to which devices will connect, and server will keep track of game progress.</p>
  
  <p>My game is very basic when it comes to graphics that I can attain the UI without using any gaming engine.</p>
  
  <p>While I'm supposed to build the game (the client) for Android, I wanted to develop server which can be <strong>RE-USED</strong> in future ports of the game, even if it is ported to other mobile platforms or even desktop.</p>
  
  <p>So I thought of first possible candidate for server architecture was having <strong>RESTful Web Service</strong> so that I can leverage the server with any client as long as the client's programming end supports HTTP methods.</p>
  
  <p>But later I realized that since there'll be persistent connection between devices and the server throughout the game session, would it be okay to have such a server, where connection will terminate after the request is responded (I'm not sure if it is true)?</p>
  
  <p>Or shall I use <code>DatagramSocket</code> and <code>DatagramPacket</code> way of Java to build the server? (will that ensure re-usability of server?)</p>
  
  <p>Any other suggestions or recommendations?</p>
  
  <p><strong>Note:</strong> I'm not new to Java or Network Programming in Java, <strong>but I'm new</strong> to both Android Development and creating RESTful services. </p>