Estoy tratando de recibir una imagen de la Galería Android a través de un intento ACTION_SEND. Configuré los filtros de intención adecuados y la Galería abre mi aplicación. Ahora quiero saber cómo obtener los datos de la imagen. No puedo encontrar ejemplos en Internet de cómo se hace esto. Me imagino que la ruta está en algún lugar en intent.getData(), pero ¿cómo exactamente puedo sacar esa imagen de la galería?Recibo un intento ACTION_SEND de la Galería
8
A
Respuesta
15
Encontré esto en la fuente de Picasa. Da el camino correcto de la imagen.
Intent intent = getIntent();
if (Intent.ACTION_SEND.equals(intent.getAction())) {
Bundle extras = intent.getExtras();
if (extras.containsKey(Intent.EXTRA_STREAM)) {
Uri uri = (Uri) extras.getParcelable(Intent.EXTRA_STREAM);
String scheme = uri.getScheme();
if (scheme.equals("content")) {
String mimeType = intent.getType();
ContentResolver contentResolver = getContentResolver();
Cursor cursor = contentResolver.query(uri, null, null, null, null);
cursor.moveToFirst();
String filePath = cursor.getString(cursor.getColumnIndexOrThrow(Images.Media.DATA));
0
No está seguro acerca de la intención de enviar, pero cuando la gestión de devoluciones de las intenciones selección situada a la MediaStore para una foto, es algo como:
Uri selectedImage = intent.getData();
AssetFileDescriptor fd = getContentResolver()
.openAssetFileDescriptor(selectedImage, "r");
FileInputStream s = fd.createInputStream();
// your image data processing code here
Tenga cuidado sin embargo - usted puede estar trabajando con más de 5 megapíxeles archivos , que puede ser bastante grande (especialmente si los está descomprimiendo en mapas de bits para procesar), y su memoria es bastante limitada.
Cuestiones relacionadas
- 1. Android: Intento de la galería que devuelve resultCode == RESULT_CANCELED
- 2. Cómo abrir un álbum en la aplicación Galería con un intento
- 3. ACTION_SEND usado para enviar sms
- 4. ¿Agregar acción visible solo en aplicaciones específicas a ACTION_SEND?
- 5. ¿Puedo hacer clic en un botón programáticamente para un intento predefinido?
- 6. ¿Cómo envío sendcast (intento) desde myDialog y lo recibo en myActivity?
- 7. He incluido string.h pero cuando intento usarlo como en el siguiente recibo errores
- 8. Guardar imagen en la galería
- 9. fuerza ACTION_SEND el envío de correo electrónico con
- 10. Android: carga lenta en la Galería
- 11. galería de Fancybox sin un href?
- 12. Artículos de la galería superpuestos (sangrado)
- 13. WPF Galería de imágenes
- 14. android recoger imágenes de la galería
- 15. Incrustar ListView dentro de la galería
- 16. Excluir the_post_thumbnail de la galería código corto
- 17. androide problema posición de la imagen galería
- 18. Android: ¿Animación en la vista de galería?
- 19. Compartir Intento de Google+ no puede acceder a la imagen
- 20. Android: ¿una galería vertical?
- 21. Galería de imágenes de iPhone
- 22. Intentando disparar un intento de ContentObserver
- 23. MPI_Recv: Recibo un tamaño diferente al enviado
- 24. jQuery lightbox Galería
- 25. ¿Cómo pasar un URI a un intento?
- 26. recomendación para la secuencia de comandos de la galería
- 27. Galería con filtro carpeta
- 28. HQL: intento ilegal de recogida de eliminar la referencia
- 29. ¿Cómo obtener el remitente de un intento?
- 30. Android: Galería de vistas web
En qué archivo y en qué parte de ese archivo se va a ubicar. –