Autore Topic: Realizzazione gioco multiplayer wifi, dubbi sull'approccio!  (Letto 933 volte)

Offline GennyAndroid

  • Utente junior
  • **
  • Post: 115
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Ace
  • Play Store ID:
    Gennaro Petito
  • Sistema operativo:
    Windows 7
Realizzazione gioco multiplayer wifi, dubbi sull'approccio!
« il: 24 Gennaio 2013, 14:41:03 CET »
0
Salva raga, dopo qualche mesetto di inattività, ho deciso di realizzare una nuova app/game che sfrutti il wifi per una modalità multiplayer, come mio consueto ogni volta decido di realizzare app che vanno al di sopra delle mie competenze, per ampliare le mie conoscenze.

Inizialmente vorrei realizzare una semplice app il cui layout è composto da una sola textview, i dispositivi che installano l'app possono visualizzare o settare questa textview, e di conseguenza se si setta il testo della textview cambia anche su tutti gli altri dispositivi.

Prima di cominciare la realizzazione dell'app stessa, vorrei capire quale approccio dovrei utilizzare per far comunicare 2 dispositivi tramite wifi.
A quanto ho capito la cosa migliore è realizzare un Web Server RestFUL. Giusto?

In merito ho letto questa guida:http://www.html.it/guide/restful-web-services-la-guida/ che spiega cosa è la tecnologia RestFUL.

Però nell'atto pratico non ho ben capito come realizzare un webserver restufull che si agganci ad un'app android, e quindi vi chiedo se sapreste indicarmi un tutorial che spieghi passo passo come realizzarlo.

Offline GennyAndroid

  • Utente junior
  • **
  • Post: 115
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Ace
  • Play Store ID:
    Gennaro Petito
  • Sistema operativo:
    Windows 7
Re:Realizzazione gioco multiplayer wifi, dubbi sull'approccio!
« Risposta #1 il: 24 Gennaio 2013, 15:19:11 CET »
0
dimenticavo, sapreste indicarmi se esiste dove poter realizzare un database su un server gratuitamente, per fare delle prove?

Offline adrew

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: +1
    • Mostra profilo
Re:Realizzazione gioco multiplayer wifi, dubbi sull'approccio!
« Risposta #2 il: 25 Gennaio 2013, 09:51:50 CET »
+1
Altervista offre tutto quello che cerhi: spazio free per un DB e fino a un tot operazioni/ora, nonchè un dominio per il tuo sito!

La tecnologia rest consiste nel tenere un DB online e, tramite pagine web (io le scrivo in php), accedere a quel database inserendo dati o estraendone. Nello specifico, puoi crerare pagine che , inserito l'indirizzo nella barra con i parametri opportuni, stampino come risposta una query del database; la quale query tu andrai a "parsare" con la tua applicazione android.

Io ho creato una pagina che, passando per esempio "www.paginamia.it?id=5" estrae dal mio database online l'id numero 5, e quindi la pagina che ottengo è

"Andrea 14 altridati"

Dunque mi basta creare una connessione http alla pagina "www.paginamia.it?id=5", successivamente eseguire un inputstream in java (con input la connessione http) e quindi eseguire il comando in.readLine() per ottenere come stringa "Andrea 14 altridati"


Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Realizzazione gioco multiplayer wifi, dubbi sull'approccio!
« Risposta #3 il: 25 Gennaio 2013, 11:10:22 CET »
0
usa google app engine! ti permette piu linguaggi e ha meno limiti di altervista!
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline GennyAndroid

  • Utente junior
  • **
  • Post: 115
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Ace
  • Play Store ID:
    Gennaro Petito
  • Sistema operativo:
    Windows 7
Re:Realizzazione gioco multiplayer wifi, dubbi sull'approccio!
« Risposta #4 il: 25 Gennaio 2013, 16:13:41 CET »
0
Altervista offre tutto quello che cerhi: spazio free per un DB e fino a un tot operazioni/ora, nonchè un dominio per il tuo sito!

La tecnologia rest consiste nel tenere un DB online e, tramite pagine web (io le scrivo in php), accedere a quel database inserendo dati o estraendone. Nello specifico, puoi crerare pagine che , inserito l'indirizzo nella barra con i parametri opportuni, stampino come risposta una query del database; la quale query tu andrai a "parsare" con la tua applicazione android.

Io ho creato una pagina che, passando per esempio "www.paginamia.it?id=5" estrae dal mio database online l'id numero 5, e quindi la pagina che ottengo è

"Andrea 14 altridati"

Dunque mi basta creare una connessione http alla pagina "www.paginamia.it?id=5", successivamente eseguire un inputstream in java (con input la connessione http) e quindi eseguire il comando in.readLine() per ottenere come stringa "Andrea 14 altridati"

Ti ringrazio per la risposta molto corposa, ma quello che non capisco è che differenza c'è fra un webservice rest ed una normalissima pagina php che fa una query sul database?

Seconda domanda:

Mettiamo che io abbia 2 dispositivi (dispositivo "A" & dispositivo "B") entrambi con la mia app aperta, entrambi visualizzano un testo, il dispositivo "A" tramite un metodo modifica il valore di questo testo e quindi fa una chiamata di tipo rest nello specifico se ho capito bene fa una chiamata PUT per modificare la risorsa. E mi chiedo come fa il dispositivo "B" a vedere la stringa aggiornata in tempo reale?

Mi spiego meglio, come fa il server ad avvisare il dispositivo "B" non appena una determinata risorsa cambia?
usa google app engine! ti permette piu linguaggi e ha meno limiti di altervista!

google app engine è gratuito? grazie per il consiglio :)
« Ultima modifica: 25 Gennaio 2013, 16:16:40 CET da GennyAndroid »