25

我正在寻找一个与 POP3/SMTP 服务器对话的示例应用程序。与其用 BSD 套接字和 CFNetwork 类型调用重新发明轮子,我很好奇目前是否有任何开源库已经处理了很多脏活?我试过谷歌搜索,但运气不佳。

也许我忽略了一些东西来简化这一点。

谢谢。

4

3 回答 3

31

CocoaDev 上的 MessageFramework列出了各种可能性,

“从 Cocoa 发送电子邮件”还列出了几个框架,包括PantomimeMailCore和 EdMessage (这个站点似乎已经关闭,但github 上有一个镜像,它也被修改为编译为 10.4,以及 10.5 -所以应该在iPhone上工作)

使用哑剧的示例代码(来自上面的博客文章):

CWMessage *message = [[CWMessage alloc] init];

CWInternetAddress *address;

address = [[CWInternetAddress alloc] initWithString:@"from@gmail.com"];
[message setFrom:address];
[address release];

address = [[CWInternetAddress alloc] initWithString:@"to@somewhere.com"];
[address setType:PantomimeToRecipient];
[message addRecipient:address];
[address release];

[message setSubject:@"test"];

[message setContentType: @"text/plain"];
[message setContentTransferEncoding: PantomimeEncodingNone];
[message setCharset: @"us-ascii"];

[message setContent: [@"This is a simple content." dataUsingEncoding: NSASCIIStringEncoding]];

smtp = [[CWSMTP alloc] initWithName:@"smtp.gmail.com" port:465];
[smtp setDelegate: self];
[smtp setMessage: message];
[message release];

ssl = YES;
mechanism = @"PLAIN";

[smtp connectInBackgroundAndNotify];
于 2009-05-06T22:02:24.417 回答
6

这是一个。我自己没试过,但你可以试一试......

http://code.google.com/p/skpsmtpmessage/

于 2009-04-11T23:11:23.897 回答
1

您还可以查看 OmniGroup 的开源框架,尤其是 OmniNetworking 框架。您可能会考虑使用它们的其他框架中的许多其他很棒的组件。

于 2009-05-10T21:10:22.567 回答