我完全被 AsyncTask 所困扰,对我应该输入的参数、进度和结果感到困惑。在我的应用程序中,我需要在图库中显示图像。网址由所有图像组成。我通过 JSON 获取这些图像 url 并将响应保存在数组列表中并将其传递给新活动。但是,我可以将 JSON 响应保存在名为“image_urls”的数组列表中。作为 android 新手,我很困惑应该在后台和异步任务中提供哪些参数。提前致谢。
以下是我创建的单独类,在 doInBackground 中,我使用 JSON 获取 reuired 项目。我很困惑我应该在 AsyncTask 和 doInBackground 中放置哪些所有参数
public abstract class Images1 extends AsyncTask<Void, Integer, Void>{
private static volatile Executor sDefaultExecutor = SERIAL_EXECUTOR;
private static String url = "http://www.ttt.com/album_pro/array_to_encode";
ArrayList<String> urlList = new ArrayList<String>();
JSONParser jParser = new JSONParser();
ArrayList<String> image_urls = new ArrayList<String>();
protected ArrayList<String> doInBackground(Void... params) {
JSONObject json = jParser.getJSONFromUrl(url);
try{
JSONObject seo = json.getJSONObject("SEO");
JSONArray folio = seo.getJSONArray("Folio");
JSONArray image_urls1 = new JSONArray();
String s1=seo.getString("Folio");
for(int i=0;i<folio.length();++i)
{
String m = folio.getString(i);
Log.v("M"+i,m);
image_urls.add(m+ ",");
}
}
catch(Exception e)
{
e.printStackTrace();
}
return image_urls;
}
protected void onProgressUpdate(Integer... progress) {
}
protected void onPostExecute(String[] result) {
}
}