Android chamando AsyncTask logo após um outro terminado
Eu tenho algum problema com o Android AsyncTask. Existe uma atividade que contém alguns TextView um botão e uma imagem. Quando um usuário inseriu essa atividade, iniciei uma tarefa async para verificar se o usuário pode ir em direção a partir da atividade (até que a tarefa não termine o botão não ativa). Então eu quero começar outro assyntask para tirar a foto. Então eu fiz uma aula interna:
<code>AsyncTask<String, Void, JSONObject>() authTask = new AsyncTask<String, Void, JSONObject>() { @Override protected JSONObject doInBackground(String... params) { //call the rest api } @Override protected void onPostExecute(JSONObject result) { // check the result // and make another asynctask AsyncTask<String, Void, Bitmap> imageTask = new Async.... { // get image } imageTask.execute(); } } </code>
e eu chamoauthTask.execute();
do thread da interface do usuário.
Eu tenho um mau pressentimento sobre isso, especialmente parece que não funciona (ok algumas vezes, mas de repente ele "congela": não há exceção pendurada e a barra de progresso está girando. Nada acontece e o botão não estará ativo). Existe outra maneira de obter uma informação e, quando terminar, iniciar imediatamente outra tarefa?
UDPATE: Eu estou trabalhando com a API level 10. No authTask eu recebo algumas informações que são necessárias para iniciar o imageTask (algum id) então eu tenho que chamar essas tarefas de uma vez. No nível 10 da API é possível?
Desde já, obrigado!
Irmão Peter