Domanda

Ho un'attività per l'inizializzazione di un gioco, che fa più seleziona e inserti da un certo numero di tabelle di SQLite.

Sto cercando di capire AsyncTask, ma, da tutti gli esempi che ho letto finora, mi chiedo se sto andando ad avere per creare una sottoclasse AsyncTask per ogni singola operazione di dati diversi che devo fare?

Per esempio, il mio NewGame attività fa il seguente:

1) Insert new player record into PLAYER table
2) Insert new player's pet record into PET table
3) Select cursor of n records from INVENTORY
4) Insert array of ranomly chosen inventory items into PLAYER_OWNED table
5) ....more things of a similar nature

Ci stanno per essere ancora qualche seleziona e inserti per varie cose anche, in modo da avere una sottoclasse individuale per ognuno sta per impazzire. Senza contare che ci saranno circa 8 attività per questo gioco, il tutto grazie soprattutto al database di leggere e scrivere.

Quindi, in sostanza, come faccio a miglior uso AsyncTask di effettuare un certo numero di diverse operazioni di SQLite?

È stato utile?

Soluzione

È possibile passare parametri a un AsyncTask, ancora di più, se si utilizza clases nidificate, è possibile utilizzare le variabili globali da dentro la classe AsyncTask, utilizzando uno dei sopra o entrambi aiuti di cui si dovrebbe essere in grado di utilizzare la stessa classe e farlo fare le cose diferent a seconda del parametro che si passa. Non vedo alcuna reale necessità di definire più AsyncTasks.

sarà necessità per definire un AsyncTask in ogni attività.

ho scritto necessità , perché davvero non dovete, ma la sua comoda per farlo in questo modo, e la sua facile da leggere / scrivere il codice, come l'AsyncTask è asociated a solo l'attività. Questo è naturalmente suposing si utilizza clases nidificate, non vedo alcun punto nella scrittura di un file di classe separato solo per un AsyncTask.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top