Autore Topic: Consigli sull'utilizzo di AsyncTask  (Letto 1004 volte)

Offline dodopepper

  • Utente junior
  • **
  • Post: 124
  • Respect: +4
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic 32a black
Consigli sull'utilizzo di AsyncTask
« il: 05 Giugno 2010, 10:54:08 CEST »
0
Avrei bisogno di un chiarimento, sto provando a giocare un po' con l'async task però ho un ovvio problema di "sincronizzazione", mi spiego: ho la necessità di inviare ad un server una stringa e attendere che mi restituisca un array di stringhe, però l'esecuzione del programma non deve andare avanti finchè non mi viene appunto restituita la stringa. Ora nell'onCreate della mia activity eseguo queste istruzioni:
-Connessione al server (dovrei aggiungere anche qui un progress dialog ma si pone il solito problema del fatto che mi deve essere restituito il valore booleano che mi indica se la connessione ha avuto successo o meno quindi anche qui dovrei avere un handler)
-Se la connessione ha avuto successo consenti all'utente di inviare la stringa altrimenti blocca tutti i bottoni e impedisci qualsiasi azione.
-durante la ricezione dell'array di stringhe vorrei visualizzare la solita ProgressDialog
-Una volta ricevuto l'array apri un alerDialog (o a questo punto un dialog con layout custom visti i problemi incontrati come da altra discussione), in base alla scelta dell'alertDialog cambia un indice nella chiamata in un altra funzione verso il server che deve ricevere delle foto quindi ci mette ancora tempo quindi mi serve un'altra progressDialog.

Ora ho due possibilità penso:
1_ Gestire tutto nello stesso AsyncTask giocandomi l'opportunità di mandare i progressi in modo da notificare all'utente le varie fasi e cambiare messaggi nei vari ProgressDialog, ma si pone il problema poi di consentirgli la scelta dal Dialog da customizzare
2_Gestire tutta la prima parte con task+ handler per poter visualizzare i ProgressDialog e magari solo nell'ultima istruzione usare AsyncTask, tanto sarebbe l'ultima istruzione dell'onCreate e potrei chiamare nell' onPostExecute l'intent necessario a lanciare l'activity dove visualizzare le varie foto...

Che mi consigliare? aiutate un pivello per favore :D
« Ultima modifica: 05 Giugno 2010, 11:05:21 CEST da Qlimax »

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +203
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Consigli sull'utilizzo di AsyncTask
« Risposta #1 il: 06 Giugno 2010, 00:33:28 CEST »
0
Ciao dopopepper,
diciamo che non esiste una soluzione perfetta.

Però, secondo me potresti gestire tutto con gli asynctask. Non capisco bene cosa intendi con "si pone il problema poi di consentirgli la scelta dal Dialog da customizzare".

Magari suddividi il problema in diverse fasi e risolvi le cose passo passo senza fare tutto insieme.
Anche definire un diagramma di flusso o di sequenza ti sarebbe sicuramente utile in questa situazione.

Saluti.
Qlimax

 

Offline dodopepper

  • Utente junior
  • **
  • Post: 124
  • Respect: +4
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic 32a black
Re: Consigli sull'utilizzo di AsyncTask
« Risposta #2 il: 06 Giugno 2010, 01:28:33 CEST »
0
Eheh tralascia il "da customizzare", era una mia "riflessione" legata al fatto che devo customizzare il dialog. Il problema vero è il fatto di dover sincronizzare la ricezione della lista con la creazione del dialog e quindi con la visualizzazione a schermo della finestra di scelta.... forse però potrei risolvere mettendo tutte le istruzioni, quindi anche la creazione del dialogo nell'async task...

Sent from my Htcclay's SuperBad 3G using Tapatalk