我如何让程序从他们的iPhone / iPad发送客户的日志文件数据?

Ric*_*ell 3 email iphone logging objective-c ios

我正在编写一个企业客户端/服务器应用程序。客户端是一个iOS应用,它使用Cocoa Lumberjack创建日志文件。这些文件对于客户端调试和故障排除至关重要。该文件最大为1MB,不过可以选择减小它的大小。

我计划编写一个“电子邮件日志文件”按钮的代码,但我不知道如何将其作为附件发送。我想我可以将所有日志消息塞入电子邮件的正文中,但这似乎有点丑陋。如果要在发送之前将文件压缩为非文本格式怎么办?我还考虑过创建网络服务以将日志文件上传到服务器,但这似乎是一项繁重的工作,因为随后我需要找出谁是谁的日志文件,并进行某种清除以使其保持整洁,等等

当然,我不是第一个面对这个问题的人。其他人怎么做?

预先感谢您可以给我的任何帮助。

jya*_*yap 5

这是一些完整的工作代码,这些代码可以创建电子邮件,添加HTML正文,添加文本附件并发送显示撰写视图。

确保您还定义了资源的路径。

NSData *textData = [[self getEmailAttachment] dataUsingEncoding:NSUTF8StringEncoding];
NSString *htmlData = [self getEmailBodyHTML];

/* Set up the mail compose view and put in the body/attachment */
MFMailComposeViewController *mailComposer = [[[MFMailComposeViewController alloc] init] autorelease];
[mailComposer setMessageBody:htmlData isHTML:NO];
[mailComposer addAttachmentData:textData mimeType:@"text/plain" fileName:@"logfile.txt"];

/* Set default subject */
[mailComposer setSubject:@"Email subject"];

mailComposer.mailComposeDelegate = self;        
[self presentModalViewController:mailComposer animated:YES];
Run Code Online (Sandbox Code Playgroud)