Pregunta

Tengo una actividad para inicializar un juego, que hace múltiples selecciona y las inserciones de una serie de tablas de SQLite.

Estoy tratando de entender AsyncTask, pero, de todos los ejemplos que he leído hasta ahora, me pregunto si voy a tener que subclase AsyncTask para cada operación de datos único diferente que tengo que hacer?

Por ejemplo, mi NewGame Actividad hace lo siguiente:

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

No va a ser un poco más selecciona e insertos para varias cosas también, así que tener una subclase individual para cada uno va a volver loco. Por no mencionar que habrá alrededor de 8 actividades para este juego, todos dependen en gran medida de la base de datos lee y escribe.

Así que, básicamente, ¿cómo puedo mejor uso AsyncTask para llevar a cabo una serie de diferentes operaciones SQLite?

¿Fue útil?

Solución

Puede pasar parámetros a un AsyncTask, aún más, si utiliza clases anidadas, puede utilizar variables globales desde el interior de la clase AsyncTask, mediante el uso de uno de los anteriores o las dos ayudas mencionadas debe ser capaz de utilizar la misma clase y tienen que hacer cosas diferentes dependiendo del parámetro que toma. No veo ninguna necesidad real para definir múltiples AsyncTasks.

será necesidad para definir un AsyncTask en cada actividad.

escribí necesidad , porque realmente no tiene que, pero su cómodo para hacerlo de esta manera, y es fácil de leer / escribir el código, como el AsyncTask se ASOCIADA sólo a la actividad. Esto es, por supuesto suposing utiliza clases anidadas, no veo ningún sentido escribir un archivo de clase separada sólo por una AsyncTask.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top