如何通过asyncTask从不同的URL下载不同文件夹中的文件



我有一个应用程序,可以通过asyncTask从两个URL下载多个文件到下载文件夹。它工作得很好,但我想把文件下载到另一个文件夹。例如,文件1下载在App文件夹中,文件2下载在下载文件夹中。。怎么能这样?

Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String url1 = "https://www.example.com";
new DownloadFont().execute(url1);
}
});

Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String url2 = "https://www.example2url.com";
new DownloadFont().execute(url2);
}
});

您可以添加一个布尔值作为参数,并根据布尔值定义路径。

@Override
protected Boolean doInBackground(Boolean saveToAppfolder, String... arg) {
String PATH = "";
if (saveToAppfolder) {
Environment.getExternalStorageDirectory() + "/AppFolder/";
} else {
//OTHER Folder
}
}

或者您可以在String[]中发送路径

@Override
protected Boolean doInBackground(String... arg) {
String PATH = arg[1];
}

实现上面的一个示例并执行:

Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String url1 = "https://www.example.com";
new DownloadFile().execute(false, url1); // first example
new DownloadFile().execute(url1, pathToDownloadTo); //second example
}
});

Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String url2 = "https://www.example2url.com";
new DownloadFile().execute(false, url2); // first example
new DownloadFile().execute(url2, pathToDownloadTo); //second example
}
});

最新更新