私はすべて AsyncTask で立ち往生しており、params、progress、result と混同しています。私のアプリケーションでは、ギャラリーに画像を表示する必要があります。URLはすべての画像で構成されています。これらの画像の URL を JSON 経由で取得し、応答を配列リストに保存して新しいアクティビティに渡します。ただし、「image_urls」という名前の配列リストに JSON 応答を保存できます。私はアンドロイドが初めてなので、バックグラウンドと非同期タスクでどのパラメーターを提供する必要があるか混乱しています。前もって感謝します。
以下は、私が作成した別のクラスです。doInBackground では、JSON を使用して必要なアイテムをフェッチしています。
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) {
}
}