J'ai un problème avec l'envoi des pièces jointes CSV via MFMailCommezeViewController.
Parfois, ils viennent tout juste bien, mais pour d'autres utilisateurs, ils ne parlent pas comme des pièces jointes, mais plutôt comme un texte en ligne dans l'e-mail (avec
au lieu des rendements de la ligne.) C'est très étrange. Quelqu'un sache ce que je fais mal?
Voici un extrait de mon code:
6 Réponses :
Je crois que le deuxième paramètre à SetMessageborybody: ishtml: code> doit être
Oui code> pour les pièces jointes à ne pas afficher en ligne. p>
Même si vous définissez ISHTML PARAM sur Oui, votre corps de message peut être envoyé comme uni clair / texte si le corps du message peut être représenté comme tel. Et les pièces jointes dans les messages simples / texte ne sont pas toujours correctement reconnues par certains clients de messagerie (Outlook). P>
Dans mon cas, l'ajout d'un lien dans le corps du message aidé. Le formatage du texte comme gras avec des balises HTML fonctionne également. Difficile! P>
Testé sur iPod 1G 3.1.3. p>
-(IBAction)btnPressed:(id)sender { NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); NSString *docDir = [arrayPaths objectAtIndex:0]; NSString *Path = [docDir stringByAppendingString:@"/CSVFile.csv"]; NSData *csvData = [NSData dataWithContentsOfFile:Path]; MFMailComposeViewController *controller = [[MFMailComposeViewController alloc] init]; controller.mailComposeDelegate = self; [controller setSubject:@"For csv file..."]; [controller setMessageBody:@"...csv file is hear.." isHTML:NO]; [controller addAttachmentData:csvData mimeType:@"text/csv" fileName:@"CSVFile.csv"]; [self presentModalViewController:controller animated:YES]; [controller release]; }
Ce n'est peut-être pas le cas ici, mais une chose à surveiller est que: renvoie un objet NSData valide mais vide si la conversion sur le codage spécifié n'est pas possible. Mieux vaut utiliser la version complète: p> ou vérifier la longueur des données renvoyées. Il semble que les pièces jointes de données zéro sont coupées quelque part dans le processus de messagerie. P> P>
hi je place du code d'échantillon pour la création de fichier CSV et joignez-la avec le courrier, mais assurez-vous de devoir ajouter des messages à MessageI.framework et d'importer son en-tête associé "messageui / messagesi.h"
"Messageui / mfmailcomposeviewController.h" et déligible "mfmailcomposevievieviewonControllerdelegate" ... J'espère que ce wl utile pour les autres
Définissez le type MIME comme "Application / Octet-Stream" et cela devrait faire le tour pour éliminer les pièces jointes en ligne (j'ai toujours nommé l'extension de mon fichier I.E. PDF) P>
Avec iOS 8, c'est la solution qui a fonctionné pour moi.
N'a pas aidé avec JPEG Pièces jointes sur iOS 8.