2010-06-11 17 views
5

Przygotowuję aplikację, która wymaga ode mnie listy wszystkich zdjęć dostępnych na karcie SD telefonu.Lista Android wszystkie dostępne zdjęcia

próbowałem zapytań drogę ContentResolver tj

Cursor image = getContentResolver().query(Images.Media.EXTERNAL_CONTENT_URI, new String[]{Images.Media._ID,Images.Media.DATA,Images.Media.DISPLAY_NAME}, null, null, null); 

ale bez rezultatu. Czy istnieje sposób, w jaki mogę uzyskać listę lub jeśli nie jest to możliwe, to czy istnieje jakaś możliwość (np. PICK), dzięki której mogę pozwolić użytkownikowi wybrać plik, a następnie uzyskać dostęp do ścieżki pliku wybranego przez użytkownika?

Helppppp faceci ...

Odpowiedz

1

można użyć działalność galerii, aby wybrać zdjęcia, coś takiego:

Intent intent = new Intent(); 
intent.setType("image/*"); 
intent.setAction(Intent.ACTION_GET_CONTENT); 
startActivityForResult(Intent.createChooser(intent, "Select Picture"),SELECT_IMAGE); 

w zwrotnego dla działalności uri plik będzie w intent parametru

+0

wow! Thanx Fredrik ... to było naprawdę szybkie ... spróbuje, żebyś wiedział ... – JaVadid

8
//where contextObject is your activity 
ContentResolver cr = contextObject.getContentResolver(); 

String[] columns = new String[] { 
       ImageColumns._ID, 
       ImageColumns.TITLE, 
       ImageColumns.DATA, 
       ImageColumns.MIME_TYPE, 
       ImageColumns.SIZE }; 
cur = cr.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, 
       columns, null, null, null); 

Mój kod jest prawie podobny do twojego (z wyjątkiem zepsutego) i działa. Nie musisz pytać o galerię w intencjach, to powinno działać. Moje dwie domysły to:

1) Upewnij się, że pamięć USB nie jest zamontowana, jeśli nie widzisz żadnych zewnętrznych obrazów.

2) Może problem z uprawnieniami? Spróbuj dodać uprawnienie GLOBAL_SEARCH, aby sprawdzić, czy to w ogóle pomaga.

+0

Wow! Muszę to wypróbować ... stary gość ... – JaVadid

+1

Dobrze Gubatron, ośmielę się powiedzieć ... U r doskonale. Więc nie moja praca kodowania? ok mayb jakiś drobny błąd literowy albo coś ja przypuszczam ... thanx kumpel – JaVadid

+1

Działa idealnie, wielkie dzięki! –

Powiązane problemy