Obtener todas las fotos de la programación android de dispositivos Android
Soy completamente nuevo a la programación del androide. Estoy tratando de obtener todas las fotos residen en el dispositivo Android en el que estoy probando mi aplicación. He escrito la función onCreate como esto–
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ImageAdapter adapter= new ImageAdapter(this); final String[] columns = { MediaStore.Images.Media.DATA, MediaStore.Images.Media._ID }; final String orderBy = MediaStore.Images.Media._ID; Uri rr= MediaStore.Images.Media.INTERNAL_CONTENT_URI; Cursor imagecursor = getContentResolver().query( MediaStore.Images.Media.INTERNAL_CONTENT_URI,null, null, null, orderBy); int image_column_index = imagecursor.getColumnIndex(MediaStore.Images.Media._ID); this.count = imagecursor.getCount(); this.thumbnails = new Bitmap[this.count]; for (int i = 0; i < this.count; i++) { imagecursor.moveToPosition(i); int id = imagecursor.getInt(image_column_index); thumbnails[i] = MediaStore.Images.Thumbnails.getThumbnail( getApplicationContext().getContentResolver(), id, MediaStore.Images.Thumbnails.MICRO_KIND, null); adapter.mThumbIds[i]= thumbnails[i]; } }
Ahora el problema es que cuando estoy recibiendo la cuenta por imageCursor.getCount () está volviendo 0. Así que dime qué hacer porque no soy capaz de buscar cualquier medio con este código.
- Error de URI desconocido en insertImage
- Diferencia entre MICRO_KIND y MINI_KIND en mediastore en android?
- Cursor vacío del MediaStore
- Inserción de un vídeo en MediaStore
- Android: EXTERNAL_CONTENT_URI es suficiente para una galería de fotos?
Nota: Lo estoy probando en Galaxy Note-2
- Android MediaStore sqlite db ubicación
- Cómo actualizar MediaStore de Android al eliminar fotos
- Archivos no eliminados al borrar y aún mostrados en Listview
- ¿Por qué MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI no proporciona un "Artista de Álbum" preciso?
- ¿Es posible hacer una consulta sin procesar en la base de datos de metales de Android de meta sqlite?
- Obtener la lista de galerías de fotos en Android
- ¿Qué hace MediaStore.Images.Media.MINI_THUMB_MAGIC?
- Contenido de Uri: // media / external / file no existe para algunos dispositivos
Primero no se olvide de
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Este método devolverá la lista de fotos en su galería
public static ArrayList<String> getImagesPath(Activity activity) { Uri uri; ArrayList<String> listOfAllImages = new ArrayList<String>(); Cursor cursor; int column_index_data, column_index_folder_name; String PathOfImage = null; uri = android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI; String[] projection = { MediaColumns.DATA, MediaStore.Images.Media.BUCKET_DISPLAY_NAME }; cursor = activity.getContentResolver().query(uri, projection, null, null, null); column_index_data = cursor.getColumnIndexOrThrow(MediaColumns.DATA); column_index_folder_name = cursor .getColumnIndexOrThrow(MediaStore.Images.Media.BUCKET_DISPLAY_NAME); while (cursor.moveToNext()) { PathOfImage = cursor.getString(column_index_data); listOfAllImages.add(PathOfImage); } return listOfAllImages; }
sólo darle una oportunidad, incluso si su dispositivo sólo tiene almacenamiento interno ningún almacenamiento externo ,
intenta agregar permisos:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Y leer usando
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI;