bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


libgdx_comunicacions

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
libgdx_comunicacions [2025/03/18 23:13]
enric_mieza_sanchez [Exercicis]
libgdx_comunicacions [2026/04/12 10:22] (actual)
enric_mieza_sanchez [Ús en app libGDX]
Línia 131: Línia 131:
 \\ \\
  
-==== Ús en app libGDX ==== +==== Ús en app libGDX (client) ==== 
-  * Per connectar-nos al servidor des de l'app libGDX ho fem al constructor o funció de inicialització ''create()''+  * Per connectar-nos al servidor des de l'app libGDX cal: 
-  * Podem enviar des de qualsevol part del codi inclús des del ''render'' tot i que convé no abusar. +    * **Inicialitzar** biblioteca de codi als ''AndroidLauncher'', ''iOSLauncher'' i ''Lwjgl3Launcher'':<code> 
-  * Per rebre dades del servidor ho fem mitjançant l'objecte ''WebSocketListener''.+CommonWebSockets.initiate();</code> 
 +    * **Crear ''socket'' i ''listener''** al constructor del joc a la funció de inicialització ''create()''
 +  * Podem **enviar dades amb el ''socket''** des de qualsevol part del codi inclús des del ''render'' tot i que convé no abusar (en l'exemple veureu que s'envien dades cada segon i no per cada frame)
 +  * Per **rebre dades amb el ''listener''** del servidor (objecte ''WebSocketListener'').
  
 <WRAP important> <WRAP important>
Línia 146: Línia 149:
  
 </WRAP> </WRAP>
 +
 +
 +=== Inicialització (launchers) ===
 +Primer de tot, cal inicialitzar els ''WebSockets'' als arxius ''AndroidLauncher'', ''iOSLauncher'' i ''Lwjgl3Launcher'':
 +
 +<file java Lwjgl3Launcher.java>
 +public class Lwjgl3Launcher {
 +    public static void main(String[] args) {
 +        if (StartupHelper.startNewJvmIfRequired()) return; // This handles macOS support and helps on Windows.
 +        CommonWebSockets.initiate();
 +        createApplication();
 +    }
 +    
 +    //...
 +}
 +</file>
 +
 +<file java AndroidLauncher.java>
 +public class AndroidLauncher extends AndroidApplication {
 +    @Override
 +    protected void onCreate(Bundle savedInstanceState) {
 +        super.onCreate(savedInstanceState);
 +        CommonWebSockets.initiate();
 +        AndroidApplicationConfiguration configuration = new AndroidApplicationConfiguration();
 +        configuration.useImmersiveMode = true; // Recommended, but not required.
 +        initialize(new Joc(), configuration);
 +    }
 +}
 +</file>
 +
 +\\
 +
 +=== App libgdx (core) ===
  
 <file java GameScreen.java> <file java GameScreen.java>
libgdx_comunicacions.1742339630.txt.gz · Darrera modificació: 2025/03/18 23:13 per enric_mieza_sanchez