2011-12-23 15 views
5

Mam metodę w mojej aplikacji, która pobiera ostatnio zapisany obraz w moim katalogu DCIM/Camera i kopiuje go do innej lokalizacji na karcie SD. Właśnie przetestowałem to na innym telefonie i stwierdziłem, że domyślnie zapisuje się na DCIM/100MEDIA. Jak mogę uzyskać tę ścieżkę?Skąd wiadomo, gdzie na karcie SD przechowywane są obrazy, DCIM/Camera, DCIM/100MEDIA?

Skończyło się na napisaniu kodu, który zapętrzył wszystkie foldery w folderze DCIM i pobrał ścieżkę folderu lastModified().

+1

Oto kilka interesujących sytuacji: http://androidforums.com/android-lounge/5930-definitive-androids-folder-structure.html#post239353, być może trzeba sprawdzić datę/czas folderów i/lub zapytać o użycie dla domyślnej lokalizacji. Będę oglądać ten wątek, aby uzyskać bardziej definitywną odpowiedź. –

+0

@RichardLogwood Dzięki, data/czas folderów był interesującym pomysłem. Skończyło się na tym, że napisałem jakiś kod, żeby to sprawdzić w folderze ostatniej modyfikacji. – Neeta

Odpowiedz

5

Wygląda na to, że jest zależne od producenta. Oprócz używania metod opisanych w książce, wydaje się, że pozwala to użytkownikowi wybrać/przesłonić domyślną opcję "odkryj", co jest ważną opcją.

z Pro Android 3: p 579

Niestety, nie jest to wywołanie metody powiedzieć, który katalog może być stosowany pod katalogu DCIM na aparat zdjęć. Istnieje jednak kilka metod, dzięki którym dowiesz się, gdzie znajduje się górna karta SD . Pierwszy to Environment.getExternalStorageDirectory() i zwraca obiekt File obiektu dla katalogu najwyższego poziomu dla karty SD.

zobacz następujące książki Google odwołuje się do pełnej strony tekstu: http://books.google.com/books?id=RuN0jb4YASwC&pg=PA579&lpg=PA579

  • inne nazwy:

Do all Android phones with a built-in camera use a folder called "DCIM" to store captured images?

http://androidforums.com/android-lounge/5930-definitive-androids-folder-structure.html#post239353

+0

To całkiem interesujące! Choć denerwujące, że folder może być inny i nie ma konkretnego sposobu jego odzyskania. – Neeta

0

Może to może pomóc:

File picDir;    
if (Build.VERSION.SDK_INT > 7) 
    picDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES); 
else 
    picDir = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), "Pictures/"); 

Mam nadzieję, że to może pomóc. Na podstawie this.

+2

To nie odpowiada na pytanie, patrz link: 'Obrazy/- Wszystkie zdjęcia (z wyjątkiem zdjęć wykonanych aparatem)' – Dalmas

+0

Tak, jasne. Nie jestem nieuważny. – Yury

Powiązane problemy