Come creare un'app di quiz multiplayer online usando Android Studio
La tua applicazione è un modello One Server-Many Clients.
Da quando hai così tanti clienti/utenti, hai bisogno di un modo per differenziarli in qualsiasi momento. Per questo, devi mantenere i dettagli di ogni cliente sul tuo server. Potete farlo inviando un ID unico insieme a tutti i dettagli necessari sugli utenti al server al momento della registrazione/iscrizione, e mantenere le comunicazioni con il server usando quell'ID unico. Ora hai finito con la parte della registrazione dell'utente.
Ora hai bisogno di domande per la tua app. Mantenete il database di domande e risposte sul vostro server. Invia la richiesta insieme all'ID dalla tua app al server. Il server cercherà la domanda (a seconda della query che hai inserito). Il server risponderà solo a quegli ID che hanno richiesto il server. Puoi implementare questo con/senza l'uso di Google Cloud Messaging (GCM), dipende da te.( Se stai usando GCM allora devi sapere come funzionano i servizi in background. )
Seleziona la risposta sull'app e inviala al tuo server, e fai quello che vuoi fare con il punteggio degli altri giocatori.
Questa app richiederà molte connessioni di rete e forse sai che le operazioni di rete non possono essere fatte su UI Thread. Quindi avete bisogno di fare tutto questo su un thread separato. Un tipo migliore di thread è AsyncTask (basta cercarlo! ).
Un'altra cosa è che hai bisogno di mantenere le credenziali degli utenti sulla tua app. Poiché queste sono molto piccole, le salviamo usando SharedPreferences.
Potresti aver bisogno di conoscere la creazione di database SQL per la tua app, se vuoi salvare qualcosa per la visualizzazione offline.
So here is the list of concepts you need to learn about for your app
- Activity lifecycle
- Services and Broadcast Receiver (if you opt for GCM)
- AsyncTask
- SharedPreferences (and SQL database)
- Network connections-Post and Get request
You will need to set up a web server, for that you may need to learn PHP.
I will add more if I recall anything else.