2011-02-25 517 views

回答

7

我認爲DCIM目錄永遠不會在內部存儲器上(我的HTC Legend甚至不會在沒有sd卡的情況下拍攝照片)。 Environment.DIRECTORY_DCIM變量只是字符串「DCIM」ref

在/ DCIM中存儲圖像的原因是與期望圖片在/ DCIM中可用的讀卡器(例如打印機)兼容,所以我認爲在內部存儲上使用它是沒有意義的。

反正在外部存儲(SD卡)的文件夾可以這樣訪問:

File rootsd = Environment.getExternalStorageDirectory(); 
File dcim = new File(rootsd.getAbsolutePath() + "/DCIM"); 
+0

我有設備中興880E(4.0.4)。它有內部存儲('/ mnt/sdcard2')。如果我不插入外部SD卡,則相機中的照片/電影將保存到內部存儲:'/ mnt/sdcard2/DCIM'。如果我插入SD卡(它掛載到'/ mnt/sdcard'),則將相機數據保存到sdcard:'/ mnt/sdcard/DCIM'。但在這兩種情況下'getExternalStorageDirectory'都返回/ mnt/sdcard。 – 2013-09-25 00:20:29

0

你可以看看here

或者,您可以將圖片保存到的任何路徑SD卡 - 最好爲您的應用程序創建一個目錄。 android中的媒體掃描器會提取您的文件並將其自動添加到庫中。

您可以強制設備掃描立竿見影的效果文件與this(不知道如果多數民衆贊成推薦的方法)