Autore Topic: Applicazione Client - Server  (Letto 495 volte)

Offline Overflow10

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy s3
  • Sistema operativo:
    Windows 8
Applicazione Client - Server
« il: 17 Giugno 2014, 11:56:24 CEST »
0
Salve a tutti,
premetto che sono un principiante nello sviluppo di app per Android (per smartphone in generale).
Sto sviluppando un app che funge da Client, utilizzando le classi base per la manipolazione di una connessione come Socket, DataOutputStream e DataInputStream per scriverci e leggerci, e utilizzando AsyncTasck per la realizzazione della connessione e per l'invio e la ricezione dei pacchetti.
Il server l'ho implementato in C++(non potevo fare altrimenti per quello che devo realizzare) sul un pc Desktop al momento.
Il problema sostanziale è che quando invio un pacchetto (contenente un'immagine) questo non viene inviato immediatamente, ma, da quello che ho capito, il telefono va prima in standby (lo schermo si spegne, l'app va in onPause()) e solo allora il pacchetto giunge a destinazione.
Sapete darmi dei chiarimenti? Io vorrei che l'app non andasse in onPause, anche perché in questo stato chiudo la connessione con il server, e vorrei che continuasse ad interagire con il server.
Ringrazio per la disponibilità.

Offline dellaz

  • Nuovo arrivato
  • *
  • Post: 38
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Nexus 7 (2012)
  • Sistema operativo:
    Win 8, Ubuntu 14.10, Mac OS X 10.10 (Yosemite)
Re:Applicazione Client - Server
« Risposta #1 il: 19 Giugno 2014, 01:27:39 CEST »
0
Ciao, prima di tutto una domanda: hai la necessità di usare API di così basso livello (TCP) oppure puoi anche lavorare a livello di HTTP?
In ogni caso no, non è "normale" che invii tutto solo nell'onPause(). Potresti postare un po' di codice?
LogCat is the way!
Hai trovato utile una risposta? Clicca su

Offline Overflow10

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy s3
  • Sistema operativo:
    Windows 8
Re:Applicazione Client - Server
« Risposta #2 il: 19 Giugno 2014, 16:03:37 CEST »
0
Ciao, ti ringrazio anzi tutto per la risposta. Comunque ho risolto il problema, era un errore nel server e il telefono andava semplicemente in standby dal momento che non effettuavo operazioni.
Per evitare il problema dello spegnimento dello schermo utilizzo il metodo:
Codice (Java): [Seleziona]
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);senza utilizzare wakelock, è buona cosa? considera che sto effettuando una specie di streaming di immagini dal telefono al server.
Potresti indicarmi la soluzione migliore per gestire la connessione tra un Thread e un AsyncTask?
Per quanto riguarda le API, utilizzo quelle perchè non mi serve implementare un protocollo HTTP e ho bisogno di maggiore velocità e flessibilità.
Grazie ancora.

Offline dellaz

  • Nuovo arrivato
  • *
  • Post: 38
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Nexus 7 (2012)
  • Sistema operativo:
    Win 8, Ubuntu 14.10, Mac OS X 10.10 (Yosemite)
Re:Applicazione Client - Server
« Risposta #3 il: 19 Giugno 2014, 18:41:10 CEST »
0
Per quanto riguarda il flag direi che se ti serve solo mantenere lo schermo acceso va benissimo così.

Per quanto riguarda l'altra domanda: l'asynctask si pone ad un livello di astrazione superiore, e ti permette di fare anche modifiche alla UI, cosa che con i thread dovresti gestire "ad un livello più basso" tramite gli handler.. Quindi propenderei per il primo! Se, invece, hai bisogno di un'interazione in background considera l'utilizzo di un Service.
LogCat is the way!
Hai trovato utile una risposta? Clicca su