gpt4 book ai didi

android - 奇怪的 AsyncTask 行为

转载 作者:行者123 更新时间:2023-11-29 17:55:10 25 4
gpt4 key购买 nike

我已经成功地在操作栏上设置了 2 个项目以打开 2 个单独的异步任务以在后台执行不同的任务。

我的第一个项目启动一个 AsyncTask 类,它只会下载图像并将它们保存到 SD 卡。

我的第二个项目启动一个 AsyncTask 类,它将下载图像,然后将其设置为用户壁纸。

我遇到的问题是,当按下第二个项目(设置壁纸)时,它会同时执行被 2 个类分开的 2 个任务(保存并设置用户壁纸)。

然后,当我删除其他启动代码(设置壁纸/反之亦然)时,它只会执行一项任务,而不是同时执行两项任务。

我不知道为什么会这样,有人能帮帮我吗?谢谢...

代码:

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
// TODO Add your menu entries here
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.test, menu);

}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {

case R.id.SaveWallpaper:

new SaveWallpaperAsync(getActivity()).execute(mImageUrl);

return true;



case R.id.SetWallpaper:

new SetWallpaperAsync(getActivity()).execute(mImageUrl);

return true;
}
return super.onOptionsItemSelected(item);
}

最佳答案

尝试这样的事情:

class SaveWallpaperAsync extends AsyncTask {

doInBackground(...) {
image = Utils.downloadImage(...);
Utils.saveToSdCard(image);
}

}

class SetWallpaperAsync extends AsyncTask {

doInBackground(...) {
image = Utils.downloadImage(...);
Utils.setBackground(image);
}

}

关于android - 奇怪的 AsyncTask 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19913593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com