Можно ли установить путь к папке "Папка загрузки" на устройстве Android?
Как получить мой Android-устройство
Ответ 1
если устройство имеет SD-карту, вы используете:
Environment.getExternalStorageState()
если у вас нет SD-карты, вы используете:
Environment.getDataDirectory()
если нет SD-карты, вы можете создать свой собственный каталог на устройстве локально.
//if there is no SD card, create new directory objects to make directory on device
if (Environment.getExternalStorageState() == null) {
//create new file directory object
directory = new File(Environment.getDataDirectory()
+ "/RobotiumTestLog/");
photoDirectory = new File(Environment.getDataDirectory()
+ "/Robotium-Screenshots/");
/*
* this checks to see if there are any previous test photo files
* if there are any photos, they are deleted for the sake of
* memory
*/
if (photoDirectory.exists()) {
File[] dirFiles = photoDirectory.listFiles();
if (dirFiles.length != 0) {
for (int ii = 0; ii <= dirFiles.length; ii++) {
dirFiles[ii].delete();
}
}
}
// if no directory exists, create new directory
if (!directory.exists()) {
directory.mkdir();
}
// if phone DOES have sd card
} else if (Environment.getExternalStorageState() != null) {
// search for directory on SD card
directory = new File(Environment.getExternalStorageDirectory()
+ "/RobotiumTestLog/");
photoDirectory = new File(
Environment.getExternalStorageDirectory()
+ "/Robotium-Screenshots/");
if (photoDirectory.exists()) {
File[] dirFiles = photoDirectory.listFiles();
if (dirFiles.length > 0) {
for (int ii = 0; ii < dirFiles.length; ii++) {
dirFiles[ii].delete();
}
dirFiles = null;
}
}
// if no directory exists, create new directory to store test
// results
if (!directory.exists()) {
directory.mkdir();
}
}// end of SD card checking
добавить разрешения для вашего manifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Счастливое кодирование.
Ответ 2
Чтобы найти местоположения на внутреннем хранилище для вашего приложения, используйте getFilesDir(), вызываемый в любом Контексте (например, в вашей Деятельности), чтобы получить объект File.
почему вы не можете использовать Environment.getExternalStorageDirectory() для получения/хранения /sdcard0/path из кода?
необходимо также добавить разрешения.
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Надежда U получит ваше решение...