我有一个应用程序,可以从两个URL下载多个文件,然后通过asyncTask下载文件夹。它工作正常,但我想将文件下载到其他文件夹中。例如,在App文件夹中下载文件1,在下载文件夹中下载文件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);
}
});
答案 0 :(得分:1)
您可以添加布尔值作为参数,并根据布尔值定义路径。
@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
}
});