我在android中工作。使用AsyncTask進行多個操作
我有一個的parseURL類在我MainActivity.java延伸的AsyncTask:
類解析一個URL,然後做一些工作吧。
private class ParseURL extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... strings) {
StringBuffer buffer = new StringBuffer();
Document doc;
try {
Log.i("output", "trying to connect..");
doc = Jsoup.connect("http://sirim.co.il/").get();
Log.i("output", "connected");
Elements metaElems = doc.select("a[class=mainlevelmatkonim]");
for (Element metaElem : metaElems) {
String c = metaElem.text();
buffer.append(c + "\r\n");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return buffer.toString();
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
httpInfo.setText(s);
}
}
我的問題是 - 如果我想再次使用的AsyncTask解析另一頁 - 但與解析的頁面不同的動作 -
我應該使用相同的類或創建一個新的?
什麼是正確的方法?有一個「if」語句或類似的東西來檢查如何處理解析的頁面?或者有幾個AsyncTask類可以完成不同的工作?
thnaks提前, 奧菲克
那要看情況。什麼是不同行爲的例子?如果你可以簡單地傳遞不同的'params',那麼就使用同一個類。 – codeMagic 2014-10-17 12:58:21
[看看](http://nobalg.tumblr.com/post/98543748225/android-asynctasks-one-after-the-other) – nobalG 2014-10-17 13:02:03
@codeMagic thnaks爲您的答案。可以說第一份工作是用來自URL的一些數據填充列表。第二項工作是查看列表並根據用戶的組合框選擇從不同的URL中提取一些數據。 (兩個不同的工作)。你認爲可以有兩個AsyncTask類嗎?或者有一個可以根據某個參數執行兩個任務 – 2014-10-17 13:22:51