Sae*_*umi 7 android android-asynctask
我有两个Activitys(mainActivity&downloadActivity),我有两个AsyncTasksdownloadActivity
在downloadActivity首先它执行getFileAsyncTask用于读取JSON文件添加一些图片,并创建一个ListView从图像,如果图像上用户点击,将downloadAsyncTask被调用,它开始从网上下载一些东西.我的问题是在这里:第二,当AsyncTask运行我回去mainActivity再次复出downloadActivity第一AsyncTask不叫,直到downloadAsyncTask完成
public class downloadActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
...
new getFileAsyncTask().execute();
...
}
private class getFileAsyncTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {
//fetch a json file from internet and add images in ListView
return null;
}
//there is an BaseAdabter class
//if user clicks on an image it calls this downloadAsyncTask.execute()
private class downloadAsyncTask extends AsyncTask<Void, Integer, Void> {
@Override
protected void onPreExecute() {
//download the file
}
@Override
protected Void doInBackground(Void... unused) {
//download the file
}
}
Run Code Online (Sandbox Code Playgroud)
注意: 我想写一些像购物应用程序.例如,用户可以下载文件并冲浪到商店查看产品.
And*_*ter 16
如果要AsyncTasks并行运行多个,则可以调用executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR)而不是execute()执行任务.默认情况下,AsyncTasks以串行方式运行,先到先服务.
请注意,两个线程不会在相同的数据上进行交互,这可能会导致一些奇怪且难以跟踪的错误.
| 归档时间: |
|
| 查看次数: |
7570 次 |
| 最近记录: |