Abrir automáticamente el selector de intenciones para el archivo Android
Quiero abrir un archivo en android
. Lo que quiero hacer es si el archivo es de tipo Image
entonces quiero abrir Intent Chooser
que contiene aplicaciones que pueden ver la imagen, y si es de tipo de vídeo, a continuación, abrir Intención Chooser con aplicaciones que pueden ver videos. ¿Cómo puedo conseguir esto?
- Cómo saber si el archivo .3gp es de audio o video en android
- Evitar la caída de arrastre del tipo mime personalizado a EditText
- Tipo de MIME para directorios en Android
- Adjunto de Gmail y extensión personalizada
- ¿Tipo Mime para archivos .txt?
- ¿Cómo calcula Android el tipo MIME de un URI para un intento implícito?
- MimeType derecho para abrir el archivo
- Abrir mi aplicación para un determinado archivo y extensión de URL - intento-filtro no funciona como se pretende
- ¿Cómo puedo obtener el tipo mime de un archivo con su Uri?
- ¿Existe una forma estándar de suscribirse a un feed mediante una aplicación de podcast?
- Android: el tipo mime para el anexo de correo electrónico no está configurado
- declarando el tipo de mime para un "archivo personalizado" que se va a enviar a través de bluetooth
- Cómo abrir MIME - "application / x-509-server-cert" tipo en Android Moto G?
He encontrado una solución. Lo pego aquí para que pueda ayudar a otros usuarios.
Intent intent = new Intent(); intent.setAction(android.content.Intent.ACTION_VIEW); File file = new File(path); MimeTypeMap mime = MimeTypeMap.getSingleton(); String ext = file.getName().substring(file.getName().indexOf(".") + 1); String type = mime.getMimeTypeFromExtension(ext); intent.setDataAndType(Uri.fromFile(file), type); context.startActivity(intent);
Usted debe decidir y saber si el archivo es video o imagen. Puede hacerlo mirando la extensión de los archivos.
Después de eso, puedes abrir videos como este:
Intent intent = new Intent(); intent.setAction(android.content.Intent.ACTION_VIEW); intent.setDataAndType(Uri.parse(result), "video/*"); startActivity(intent);
e imágenes como esta:
Intent intent = new Intent(); intent.setAction(android.content.Intent.ACTION_VIEW); intent.setDataAndType(Uri.parse(result), "image/*"); startActivity(intent);
Android
sistema Android
abrirá automáticamente el Intent Chooser
.