iPhoneってメール送信はmailtoしか用意してないんですね。それ以上のものを作る(長い文字列の送信など)には自分でSMTPクライアント作るしかないみたいです。
とりあえずmailtoを使ったアプリSendingEmailを作ってみました。
###作業
- プロジェクトの新規作成でView-Based Applicationを選択:SendingEmailとする
- SendingEmailViewControllerにsendingEmail関数を追加
- SendingEmailViewController.xibファイルをダブルクリックしてInterfaceBuilderを起動
- InterfaceBuilderで先ほど追加したsendingEmailとGUIをマッピング
- Build&Goして動作を確認します:エミュレータではメール送信画面は表示されませんので、実機でどうぞ
###UIViewControllerにsendingEmail関数を追加
SendingEmailViewController.hファイル
rails>>
@interface SendingEmailViewController : UIViewController {
}
- (IBAction) sendingEmail: (id) sender;
@end
<<--
SendingEmailViewController.mファイル
rails>>
#import "SendingEmailViewController.h"
@implementation SendingEmailViewController
- (IBAction)sendingEmail:(id)sender {
NSURL* mailURL = [NSURL URLWithString: @"mailto:satoko@somedomain.com?subject=My%20Subject&body=bodyStuff"];
NSLog(@"mailURL: %@", mailURL); //Debug [[UIApplication sharedApplication] openURL: mailURL];
}
<<--
###InterfaceBuilderでの作業:SendingEmailViewController.xibを編集
- Round Rect Button(UIBUtton)をview上にドロップしてtitleにsend Emailと入力
- File's Ownerを右クリックしてダイアログを開き(この黒いダイアログなんて呼ぶのかな...)
- File's OwnerのsendingEmail関数を、ボタンの関数Touch Up Insideと結びつける
- ダイアログ内のReceived Actions項のsendingEmailの右端の丸をクリック&ドラッグして、
- ステップ1.で置いたボタン上までマウスを持って行き
- ボタンがハイライトされたらマウスを放す
- ダイアログ内のTouch Up Insideを選択

###注意
件名や本文はエンコードしないといけないようです。
http://eggbung.blogspot.com/2008/11/iphone-development-creating-email-with.html
http://www.iphonewebdev.com/examples/mailto.html
posted by
satoko on Thu 4 Dec 2008 at 16:52 with 0 comments