在iPhone SDK中告诉朋友一种形式

时间:2008-10-26 23:50:20

标签: iphone

我正在尝试像在AppStore中一样构建一个游戏中的Tell A Friend表单。有人知道它是否可以在SDK的任何地方找到?我不想重新制作切片面包。

谢谢!

5 个答案:

答案 0 :(得分:5)

如果没有编写自己的SMTP客户端,您可以创建一条消息,然后通过使用openURL向邮件应用程序发送URL来退出应用程序。

NSURL *url = [[NSURL alloc] initWithString: @"mailto:gilm@myopenid.com?subject=subject&body=body"];
[[UIApplication sharedApplication] openURL:url];

然后,用户检查内容并发送消息。

答案 1 :(得分:3)

在你的.h文件中导入MessageUI和MFMailComposerViewController:
#import <MessageUI/MessageUI.h>
#import <MessageUI/MFMailComposeViewController.h>
你需要通过添加:<MFMailComposeViewControllerDelegate>来制作你的viewController MFMailComposeViewControllerDelegate,如下所示:

@interface tellAFriend : UIViewController <MFMailComposeViewControllerDelegate> {


也可以通过IBAction告诉朋友:
-(IBAction)tellAFriend;
更新
对于短信,还要添加:
-(IBAction)tellAFriendViaSMS;


然后进入你的.m并添加以下代码:

-(IBAction)tellAFriend {

if ([MFMailComposeViewController canSendMail]) {

MFMailComposeViewController *mailView = [[MFMailComposeViewController alloc] init];
mailView.mailComposeDelegate = self;
[mailView setSubject:@"Check Out your_app_name_here"];
[mailView setMessageBody:@"Check out your_app_name_here <br> It's really cool and I think you would like it." isHTML:YES];

[self presentModalViewController:mailView animated:YES];
[mailView release];

}

else {

NSLog(@”Mail Not Supported”);

}

}

-(void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult MFMailComposeResult)result error  NSError*)error {

[self dismissModalViewControllerAnimated:YES];

}

<强>更新 您也可以使用以下代码发送短信:

-(IBAction)tellAFriendViaSMS {
MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];
if([MFMessageComposeViewController canSendText])
{
    controller.body = @"Check Out your_app_name_here, itunes_link_here";
    controller.recipients = [NSArray arrayWithObjects:@"phoneNumbersHere", @"PhoneNumberTwo", nil]; // Optional
    controller.messageComposeDelegate = self;
    [self presentModalViewController:controller animated:YES];
}
}

答案 2 :(得分:2)

与此同时,iPhone SDK中有一些新的API,包括MessageKit.framework。该框架可以添加MFMailComposeViewController。

希望有效, 添

答案 3 :(得分:1)

SDK中没有这样的内容,抱歉。

答案 4 :(得分:-2)

正如Ben所说,不,SDK中没有类似的东西。我的猜测永远不会。我想这个功能是在服务器端实现的,这可能是最好的选择。