2012-01-23 4 views
0

iphoneの設定で作成された私の個人的な電子メールアカウントを取得する方法はありますか?iphoneの設定からメールを取得

メールを送信するためのアプリケーションを作成しています。自分のiPhoneで送信した電子メールアカウントの1つを選択して送信し、自分の議題の宛先を選択したいと考えています。

おかげ

答えて

1

私はあなたが何をしようとして正確にわからないんだけど、iOSのは、いくつかの電子メール組成ビューコントローラを表示する方法だけでなく、ユーザーが自分に保存された連絡先にアクセスするためのメソッドを提供しています/ iDevice。

は、メール作成ビューを表示( MessageUI.frameworkは非常に古いiOSのバージョンでは利用できませんので、弱いリンクが好ましい)プロジェクトで MessageUI.frameworkに弱いリンクを作成するには、このような何かを:

Class mailClass = (NSClassFromString(@"MFMailComposeViewController")); 
if (mailClass != nil) { 
    // MessageUI Library is available. Presenting modal mail composer view. 
    MFMailComposeViewController *mailViewController = [[MFMailComposeViewController alloc] init]; 
    mailViewController.mailComposeDelegate = self; 

    [mailViewController setSubject:@"This is the subject of the email"]; 
    [mailViewController setMessageBody:@"This is the body of the email." isHTML:NO]; 
    [self presentModalViewController:mailViewController animated:YES]; 
    [mailViewController release]; 
} else { 
    // MessageUI Library not available. Opening mail.app using a URL scheme. 
    // Note that this URL scheme only works on iOS3 and below, and seems to only accept a 
    // limited number of characters. For this reason, we only attach the URL. 
    NSString *mailBody = @"This is the body of the email." 
    NSString *mailSchemeURL = [NSString stringWithFormat:@"mailto:?body=%@", mailBody]; 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[mailSchemeURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]]; 
} 

iDeviceの連絡先にアクセスする場合は、AddressBook.frameworkをプロジェクトにリンクします。 Apple's programming guideの手順に従って、デバイスの値にアクセスできます。たとえば、あなたはそうのようなすべての連絡先の配列を取得することができます

ABAddressBookRef addressBook = ABAddressBookCreate(); 
NSArray *contacts = (NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBook); 

は、私はあなたが上記の組み合わせを使用して、特定の連絡先とメール作成ビューをインスタンス化することができます期待しています。お役に立てれば!

+0

ありがとうございますが、MFMailComposeViewController私はメールを送信するユーザーを選択できません...私の設定では、私は1つのHotmailアカウントと1つのGmailアカウントを持っており、1カウントでメールを送信したいと思います。 –

+0

@JaviLesPaul - Fromフィールドをタップするだけで、ccフィールドとbccフィールドが開き、fromフィールドが編集可能になります。別のタップで、fromアカウントから選択することができます。アプリ内からメール設定にアクセスすることはできません。サンドボックスの外にあります。 – jrturton

+0

ああ、そうです。したがって、明確にするために、電子メールの送信に使用される電子メールアカウントを指定する必要があります。私が知る限り、電子メールを送信するために使用されるアカウントは、常に「設定>メール、連絡先、カレンダー>デフォルトアカウント」で指定されたものになります。私は間違っているかもしれませんが、メールの送信時にユーザーの嗜好を無視することをお勧めします。いずれにせよ、私は助けることができなかった申し訳ありません! – modocache

関連する問題