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.

Nota: Lo estoy probando en Galaxy Note-2

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; 
  • Cómo obtener datos de MediaStore.File y MediaStore.File.FileColumn
  • Cómo guardar la ruta de la imagen utilizando las preferencias compartidas
  • Eliminar un archivo de contentResolver sólo eliminar la entrada de la base de datos (no archivo)
  • Error de cursor Android: "asegúrese de que el cursor se inicialice correctamente antes de acceder a los datos de él ..."
  • Añadir imágenes a la galería
  • cómo obtener todos los archivos de audio de la tarjeta sd Android
  • Interno u externo uri en la obtención de datos de mediastore
  • ¿Cómo utilizar la consulta MediaStore para obtener los artistas sin duplicados?
  • Listar todas las imágenes de la cámara en Android
  • No puede solicitar permiso READ_EXTERNAL_STORAGE
  • La miniatura no se actualiza inmediatamente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.