Search code examples
iosobjective-csqlitecore-datamfmailcomposeviewcontroller

Found empty data in sqlite when send via MFMailcomposeController


I am sending SQLite(Coredata sqlite file) file via email but found empty data in all tables in the received mail.

I am using below code:

MFMailComposeViewController *mc = [[MFMailComposeViewController alloc] init];
mc.mailComposeDelegate = self;
[mc setSubject:subject];
[mc setMessageBody:body isHTML:FALSE];
if (attachmentData) {
 [mc addAttachmentData:attachmentData mimeType:fileMimeType fileName:fileName];
}
if (!recipients || recipients.count == 0) {
 recipients = @[];
}
[mc setToRecipients:recipients];
[presentedViewController presentViewController:mc animated:YES completion:nil];

Here, fileMimeType = "application/x-sqlite3" and fileName: xyz.sqlite

Found the same question here, but with no solution. Any idea how to do that?


Solution

  • As I indicated in comments, iOS uses SQLite’s WAL mode by default, so you need to include the WAL file as an attachment.