2011-11-11 40 views
8

Tôi có một FileExplorer nhỏ trong ứng dụng của mình và tôi muốn anh ta bắt đầu trong thư mục, hiện đang được máy ảnh defautl sử dụng. Có cách nào để có được con đường này? Tôi tryed:Lấy thư mục ảnh hiện tại của máy ảnh

Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_PICTURES).getAbsolutePath()); 

Nhưng điều này không lợi nhuận "/ mnt/sdcard/Hình" và máy ảnh của tôi được lưu trữ trong "mnt/sdcard/ext_sd/DCIM/100MEDIA /"

PS: tôi biết cách bắt đầu máy ảnh với một thư mục cụ thể để lưu trữ ảnh, đó không phải là những gì tôi đang tìm kiếm,

Trả lời

4
String[] projection = new String[]{MediaStore.Images.ImageColumns._ID,MediaStore.Images.ImageColumns.DATA,MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,MediaStore.Images.ImageColumns.DATE_TAKEN,MediaStore.Images.ImageColumns.MIME_TYPE};  
final Cursor cursor = managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,projection, null, null, MediaStore.Images.ImageColumns.DATE_TAKEN + " DESC"); 
if(cursor != null){ 
    cursor.moveToFirst(); 
    // you will find the last taken picture here 
    // according to Bojan Radivojevic Bomber comment do not close the cursor (he is right ^^) 
    //cursor.close(); 
} 
+2

Không gọi close() khi sử dụng managedQuery() –

+0

yor're right, thanks! – 2red13

+0

Tôi đã học được điều đó một cách khó khăn :) –

Các vấn đề liên quan