[問題] AsyncTask
TransmissionTask.java:
import android.content.Context;
import android.os.AsyncTask;
public class TransmissionTask extends AsyncTask<Object, Void, Object> {
private Context context;
public TransmissionTask(Context context){
this.context = context;
}
@Override
protected Object doInBackground(Object... params) {
Object result = null;
result = 網路傳輸的回傳;
return result;
}
@Override
protected void onProgressUpdate(Void... progress) {
}
@Override
protected void onPostExecute(Object result) {
Log.d("TransmissionTask", result.toString());
}
}
Main.java片段:
Integer ret = null;
final TransmissionTask task = new TransmissionTask(this);
task.execute();
while(task.getStatus() != AsyncTask.Status.FINISHED){}
try {
ret = (Integer)task.get();
} catch (Exception e) {
e.printStackTrace();
}
大家好,最近準備要用AsyncTask寫一堆網路傳輸的小工具,因為這個AsyncTask會一直重
覆使用在各個class內,所以我沒有像書中寫的,直接寫在inner class,而是寫成一個獨
立的class file。
所以我現在在Main.java使用TransmissionTask的時候,發生了一件難解的問題。原先如
果是使用inner class的話,可以直接在onPostExecute method,將後續要處理的事情放
在這個裡面。
可是現在寫成獨立的class file,變成一定要去polling task.getStatus()變成FINISHED
後,我才能使用task.get()把ret取出來。所以我就使用了while loop來做polling,不過
現在就是變成這個while loop跑不出來,造成後面的task.get()也無法使用了。
不知道大家在使用AsyncTask的時候,有沒有遇到過類似的問題呢?問了Google大神也沒
有解 囧rz
--
雜七雜八的kewang部落格 http://kewang.tw
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.3.53
→
06/18 23:19, , 1F
06/18 23:19, 1F
→
06/18 23:19, , 2F
06/18 23:19, 2F
→
06/19 09:11, , 3F
06/19 09:11, 3F
→
06/19 09:13, , 4F
06/19 09:13, 4F
推
06/19 09:21, , 5F
06/19 09:21, 5F
推
06/19 11:54, , 6F
06/19 11:54, 6F
→
06/19 11:55, , 7F
06/19 11:55, 7F
→
06/19 11:56, , 8F
06/19 11:56, 8F
推
06/19 13:46, , 9F
06/19 13:46, 9F
→
06/19 13:46, , 10F
06/19 13:46, 10F
推
06/19 16:18, , 11F
06/19 16:18, 11F
→
06/19 19:28, , 12F
06/19 19:28, 12F
推
06/19 21:41, , 13F
06/19 21:41, 13F
→
06/19 21:41, , 14F
06/19 21:41, 14F
→
06/19 21:46, , 15F
06/19 21:46, 15F
推
06/19 23:11, , 16F
06/19 23:11, 16F
推
06/20 23:46, , 17F
06/20 23:46, 17F
→
06/20 23:46, , 18F
06/20 23:46, 18F
→
06/21 00:52, , 19F
06/21 00:52, 19F
→
06/21 00:53, , 20F
06/21 00:53, 20F
→
06/21 18:40, , 21F
06/21 18:40, 21F
→
06/21 18:40, , 22F
06/21 18:40, 22F
→
06/21 18:41, , 23F
06/21 18:41, 23F
→
06/21 23:32, , 24F
06/21 23:32, 24F
→
06/22 00:08, , 25F
06/22 00:08, 25F
推
06/22 00:27, , 26F
06/22 00:27, 26F
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章