我在应用程序的文档目录中存储了一个VideoClip.mp4。我可以成功地用SKPSMTPMessage发送电子邮件,(电子邮件、主题、正文等),但我在附加视频时遇到了问题。我已经到处找了很多,但我会继续找的。如果有人能帮助我,我将不胜感激。非常感谢。
这个代码(显然)附加了一个图像,但我还没能弄清楚如何操作它来附加视频:
NSString *image_path = [[NSBundle mainBundle] pathForResource:@"Success" ofType:@"png"];
NSData *image_data = [NSData dataWithContentsOfFile:image_path];
NSDictionary *image_part = [NSDictionary dictionaryWithObjectsAndKeys:
@"inline;rntfilename=\"Success.png\"",kSKPSMTPPartContentDispositionKey,
@"base64",kSKPSMTPPartContentTransferEncodingKey,
@"image/png;rntname=Success.png;rntx-unix-mode=0666",kSKPSMTPPartContentTypeKey,
[image_data encodeWrappedBase64ForData],kSKPSMTPPartMessageKey,
nil];
这是一个迟来的答案,但希望它能帮助到别人。假设您知道文档目录(videoPath
)中视频文件的路径,则代码如下:
NSData *videoData = [NSData dataWithContentsOfFile: videoPath];
NSDictionary *videoPart = [NSDictionary dictionaryWithObjectsAndKeys:@"video/quicktime;rntx-unix-mode=0644;rntname="video.mov"",kSKPSMTPPartContentTypeKey,
@"attachment;rntfilename="video.mov"",kSKPSMTPPartContentDispositionKey,[videoData encodeBase64ForData],kSKPSMTPPartMessageKey,@"base64",kSKPSMTPPartContentTransferEncodingKey,nil];
然后,您可以像这样将其附加到SKPSMTPMessage *testMsg
对象(假设您已经设置了testMsg
所需的其余属性,如凭据等):
testMsg.parts = [NSArray arrayWithObjects: videoPart,nil];