Il est possible d'obtenir le chemin d'accès au dossier de téléchargement interne de l'appareil Android Android?
si un appareil possède une carte SD, vous utilisez:
Environment.getExternalStorageState()
si vous n'avez pas de carte SD, vous utilisez:
Environment.getDataDirectory()
s'il n'y a pas de carte SD, vous pouvez créer votre propre répertoire sur l'appareil localement.
//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
ajouter des autorisations sur votre manifest.xml
<uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE" />
Bon codage ..
Pour trouver des emplacements sur le stockage interne de votre application, utilisez getFilesDir (), appelé dans n'importe quel contexte (tel que votre activité, pour obtenir un objet File.
pourquoi ne pouvez-vous pas utiliser Environment.getExternalStorageDirectory () pour obtenir/storage/sdcard0/path à partir du code?
devez également ajouter des autorisations.
<uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE" />
J'espère que vous obtiendrez votre solution ...