que puedo posible para disponible desde descargar correo como cerrar celular archivos archivo aplicacion adjuntos adjunto abrir android android-intent email-attachments htc-thunderbolt

puedo - Problema de varios archivos adjuntos de Android Email en HTC Thunderbolt



no puedo descargar archivos adjuntos desde mi celular (4)

Tengo una situación extraña aquí.

Estoy tratando de enviar correos electrónicos con múltiples archivos adjuntos usando el siguiente fragmento de código.

Intent emailIntent = new Intent( android.content.Intent.ACTION_SEND_MULTIPLE ); // emailIntent.setType( "plain/text" ); emailIntent.setType( "application/octet-stream" ); ... .... emailIntent.putParcelableArrayListExtra( Intent.EXTRA_STREAM, uris );

Esto funciona bien y el mecanismo de intención implícita muestra muchas opciones como Gmail, Skype, Mensajes, etc.

El problema es que el cliente de correo predeterminado no aparece en HTC Thunderbolt (pero funciona en otros dispositivos, incluido HTC Incredible S).

Si intento enviar un solo archivo adjunto con Intent.ACTION_SEND , Intent.ACTION_SEND el cliente de correo predeterminado . He intentado configurar el tipo de contenido a text / plain, appliation / octet-stream, message / rfc282 etc. pero ninguno funciona.

¿Que me estoy perdiendo aqui?


Esto funciona muy bien para mí, asegúrese de especificar el tipo de mensaje, así es como el sistema operativo Android sabe qué difusión usar.

String email = "[email protected]"; Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE); intent.setType("message/rfc822"); intent.putExtra(Intent.EXTRA_EMAIL, new String[] {email}); // could have multiple address intent.putExtra(Intent.EXTRA_SUBJECT, "Enter your subject here"); intent.putExtra(Intent.EXTRA_TEXT, "message text as needed"); ArrayList<Uri> arrayUri = new ArrayList<Uri>(); arrayUri.add(Uri.parse("file://" + paths[0])); arrayUri.add(Uri.parse("file://" + paths[1])); intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, arrayUri); startActivity(Intent.createChooser(intent, "Any title to show on chooser"));


Prueba esto. Creo que funcionará.

final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND_MULTIPLE); emailIntent.setType("plain/text"); ArrayList<Uri> uris = new ArrayList<Uri>(); String[] filePaths = new String[] {image1 Path,image2 path}; for (String file : filePaths) { File fileIn = new File(file); Uri u = Uri.fromFile(fileIn); uris.add(u); } if ( !(app_preferences.getString("email", "") == null || app_preferences.getString("email", "").equals(""))) { emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[] {app_preferences.getString("email", "")}); } emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Subject name"); emailIntent.putExtra(Intent.EXTRA_TEXT, "Please find the attachment."); emailIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris); startActivity(Intent.createChooser(emailIntent, "Email:"));


Suena como un error en la versión de Sentido de Thunderbolt. Interfaces de usuario personalizadas para la victoria, ¿estoy en lo cierto?

De todos modos, buscaría qué aplicación realmente maneja los correos electrónicos en el rayo y pondré un enunciado if para detectar si el dispositivo es un rayo. Si lo es, configure la clase de destino del Intento como lo que sea. Si no es así, haz lo que ya estás haciendo.