2009-07-29 10 views
0

사용자가 텍스트 필드에 문자열을 입력하고 완료를 누른 다음 해당 데이터를받은 편지함으로 전자 메일로 보낼 수있게하려면 어떻게해야합니까? 누군가 내가 배울 필요가있는 기본 단계, 설명서, 샘플 코드 등을 권장 할 수 있습니까? 가능한 경우 메일 응용 프로그램을 여는 것을 피하고 싶습니다.UITextfield에서 전자 메일 보내기

감사합니다.

답변

3

사과 설명서에서 http://developer.apple.com/iphone/library/documentation/MessageUI/Reference/MessageUI_Framework_Reference/MessageUI_Framework_Reference.pdf의 UI 메시지 프레임 워크를 살펴보십시오. MFMailComposeViewController 등을 사용하고 있습니다. 결코 사용하지 않았으며, 이메일을 쓰는 UI를 제공하며, 배후에서 이메일을 보낼 수 있는지도 모릅니다. 가능), 당신은 워드 프로세서를보고 그것을 알아낼 필요가있다. 그것이 당신을 위해 그것을하지 않는다면, 당신은 항상 SMPT 프로토콜을 만들고 이메일을 직접 보낼 수 있습니다 ... (생각할지라도 UI 메시지 프레임 워크에서 뭔가를 찾을 수 있어야합니다)

+0

사용자가 편집 할 필요가없는 미리 준비된 메시지를 보내는 것이 아니라고 가정하면 올바른 방법처럼 보입니다. 또한 이메일을 보내더라도 사용자가 응용 프로그램을 종료하지 않아도된다는 이점이 있습니다. – Amagrammer

2

원한다면 이메일이 사용자 자신의 개인 계정에서 온 다음이로 중 하나

  1. 사용하는 내장 MFMailComposeViewController 또는
  2. http://code.google.com/p/skpsmtpmessage/ 같은 SMTP 클라이언트 라이브러리를 사용하여 (메일 편집 페이지를 두는). 그러나이 경우 사용자의 SMTP 계정 정보 (예 : 사용자 ID, 이메일 주소, 비밀번호)를 가져와야합니다.

텍스트 상자의 본문 만 원하는 경우 반송 이메일 주소에 신경 쓰지 않으면 간단한 메일 재송신 웹 서비스 (PHP/Ruby/Python 코드 톤이 있음)를 설정할 수 있습니다. 스크립트에서 전자 메일을 보내는 경우). 그런 다음 iPhone 앱이 웹 서버에 대한 HTTP 요청을 시작하여 메일 메시지 형식으로 사용자에게 전달합니다.

이것은 사용자로부터 최소한의 입력 만 필요하므로 사용자에게 가장 친숙 할 수 있지만 SSL (또는 인증 사용)과 같은 안전 장치를 사용하여 웹 서비스 URL에 대한 액세스를 앱. 이 같은

0

뭔가 작업을해야합니다 :

에 대한 맞아
NSString *s = @"mailto:[email protected]?subject=iPhone%20Question&body=Where%20is%20mine?"; 
NSURL *url = [[NSURL alloc] initWithString: s]; 
[[UIApplication sharedApplication] openURL: url]; 

, 나는 생각한다. % 20은 포함 된 공백을위한 것입니다. 위에서 하드 코딩 한 값 대신 실제 값을 넣으면 URL의 공백이나 다른 문제가있는 문자에 대한 텍스트 대체가 필요할 것입니다. 나는 전문가가 아니며 다른 사람이 가이드를 가리킬 수도 있습니다.

openURL 호출이 성공하면 응용 프로그램이 종료되므로 위의 "url"과 같은 항목을 정리할 필요가 없습니다.

위의 참조 된 MFMailComposeViewController가 올바른 방법 일 수 있습니다.이 부분을 살펴볼 것입니다.