ios - URL Scheme Attachment Aplicación de Microsoft Outlook
email url-scheme (1)
Estoy publicando esta respuesta basada en "Algo es mejor que nada". Sé que no es posible enviar un correo electrónico con un archivo adjunto con la aplicación iOS, así que he logrado encontrar la manera de, al menos, enviar un archivo de imagen en el correo electrónico.
// Create an array of recipients for the email.
NSArray* emailRecipients = @[@"[email protected]", @"[email protected]"];
// Create a mutable string to hold all of the recipient email addresses and add the first one.
NSMutableString* emailTo = [[NSMutableString alloc] initWithString:emailRecipients[0]];
// Loop through all of the email recipients except for the first one.
for (int index = 1; index < emailRecipients.count; index++)
{
// Add a semicolon and then the email address at the current index.
[emailTo appendFormat:@";%@", emailRecipients[index]];
}
// Get the email subject from the subject text field.
NSString *emailSubject = @"Your Email Subject";
// Encode the string for URL.
NSString *encodedSubject = [emailSubject stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];
// Define your image''s size
NSString *htmlBody = (@"<div style=/"width:450px;height:797px;/"><img src=/"http://your_website.com/your_image.jpg/" style=/"width:100%;height:100%;/"></div>");
// Encode the string for URL.
NSString* encodedBody = [htmlBody stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];
// See if the subject or body are empty.
if (![emailSubject length] || ![emailBody length])
{
// Exit.
return;
}
// Create a string with the URL scheme and email properties.
NSString *stringURL = [NSString stringWithFormat:@"ms-outlook://compose?to=%@&subject=%@&body=%@", emailTo, encodedSubject, encodedBody];
// Convert the string to a URL.
NSURL *url = [NSURL URLWithString:stringURL];
// Open the app that responds to the URL scheme (should be Outlook).
[[UIApplication sharedApplication] openURL:url];
Esto envía el archivo de imagen incrustado en el cuerpo del correo electrónico fácilmente. Es posible que deba ajustar el tamaño de acuerdo con su imagen.
Intento crear una aplicación que genere un archivo y llene todos los campos de correo electrónico para que el usuario simplemente tenga que ingresar el cuerpo. También le doy al usuario la posibilidad de elegir entre la aplicación de correo electrónico nativa iOS y la aplicación Microsoft Outlook (si lo tiene instalado).
Cuando implemento esto para preparar el correo electrónico que se enviará en la aplicación de correo electrónico nativa, he utilizado el framework MessageUI
que hace fácil adjuntar el archivo, pero para la aplicación de Outlook tengo que usar un esquema de URL ( ms-outlook://
) y parece que no hay una manera fácil (o ninguna) de adjuntar archivos.
¿Alguien ha enviado con éxito un archivo adjunto desde otra aplicación a través de la aplicación de Outlook?