我正在開發一個可以下載.mp3文件的Android應用程序。 我下載文件的路徑是
"/sdcard/downloadedfile.mp3"
。這是去SD卡如何在下載文件時設置手機內存的路徑?
。 我想設置路徑到設備的內部存儲器。所以沒有SD卡的設備應該默認進入內部存儲器。
任何人都可以爲我找到解決方案..>?
我正在開發一個可以下載.mp3文件的Android應用程序。 我下載文件的路徑是
"/sdcard/downloadedfile.mp3"
。這是去SD卡如何在下載文件時設置手機內存的路徑?
。 我想設置路徑到設備的內部存儲器。所以沒有SD卡的設備應該默認進入內部存儲器。
任何人都可以爲我找到解決方案..>?
@android開發見習
我覺得你可以試試這個:
String fileName="name.mp3";
File folder = new File(Environment.getExternalStorageDirectory().getPath() + "/floderName/");
if (!folder.exists()) {
try {
folder.mkdirs();
} catch (Exception e) {
e.printStackTrace();
System.out.println("Default Save Path Creation Error:" + folder);
}
}
File logFile = new File(folder, fileName);
if (!logFile.exists()) {
try {
logFile.createNewFile();
} catch (IOException e) {
e.printStackTrace();
System.out.println("Default Save Path Creation Error:" + logFile);
}
}
順便說一句, 請不要忘記在android6.0
謝謝你工作...... :) –
由於內部存儲位置受到權限保護,您提供的任何位置都只能由您的應用程序訪問。您可以這樣做。
(1)在「外部」存儲上提供文件路徑這是您現在正在執行的操作,完成後,複製到內部存儲,然後刪除外部存儲上的文件。
(2)創建ContentProvider,讓DownloadManager可以寫入併爲其提供與此ContentProvider相對應的URI。您實現的ContentProvider可以將文件寫入內部存儲,因爲它將在應用程序的上下文中運行。
這裏是你的內部存儲文件代碼:
String songname= "Song_Name" ;
File storageDir = Environment.getExternalStorageDirectory();
File.createTempFile(
songname, /* prefix */
".mp3", /* suffix */
storageDir /* directory */
);
,不要忘記獲得許可,寫存儲。
謝謝你的工作:) –
你能告訴我如何在內存中創建一個新的文件夾並將其存儲在其中? –
in storageDir varibale添加「/ myfoldername」以使您的特定目錄 –
/SD卡添加的權限和運行權限不在可移動的micro SD卡的路徑中。它是設備的外部存儲器。不是微型SD卡。 – greenapps
但是,硬編碼該路徑仍然是一個壞主意。使用答案。 – greenapps