2014-02-18 5 views
4

여기 많은 게시물, 수많은 온라인 자습서/샘플 코드를 검토 한 결과 나는 혼란 스럽습니다. 내 응용 프로그램에서는 내 응용 프로그램 (AirDrop 및 메일)에 적합한 공유 옵션을 iOS7에서 기본적으로 제공하는 UIActivityController를 표시하는 데 아무런 문제가 없습니다.iOS 7 UIActivityViewController 전자 메일 첨부 파일

내가 겪고있는 특정 문제는 사용자가 메일을 통해 공유 옵션을 선택할 때 이메일 메시지에 첨부 된 문서를 첨부하는 것입니다. 메시지 본문이 텍스트로 설정되어 있지만 첨부 파일은 MIA입니다. 관련 코드는 다음과 같습니다.

// 현재 표시된 레코드에 대해 공유 할 XML 파일 생성 ... NSURL * url = [self createShareFile];

UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:@[@"Data shared from my app.", url] applicationActivities:nil]; 

// Filter out the sharing methods we're not interested in.... 
controller.excludedActivityTypes = @[UIActivityTypePostToTwitter, UIActivityTypePostToFacebook, 
           UIActivityTypePostToWeibo, 
           UIActivityTypeMessage, 
           UIActivityTypePrint, UIActivityTypeCopyToPasteboard, 
           UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, 
           UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr, 
           UIActivityTypePostToVimeo, UIActivityTypePostToTencentWeibo]; 

// Now display the sharing view controller. 
[self presentViewController:controller animated:YES completion:nil]; 

무엇이 누락 되었습니까? 내 파일이 제대로 만들어지고 내용이 정확하며 NSURL 개체에 파일의 적절한 경로가 포함되어 있습니다.

감사합니다.

답변

6

문제 해결 .....

원본 게시물의 코드는 100 % 정확합니다. 마자

return [NSURL fileURLWithPath:docFile]; 

:

잘못된 (원래 방법) :

return [NSURL URLWithString:[docFile stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 

올바른 방법이 문제는 내 createShareFile 방법에 반환되는 나는 NSURL을 건설 한 방법으로 었죠 필자는 사용자 지정 파일 형식을 사용해도 작업을 시작했습니다.

+0

내 하루를 저장했습니다. 이것을 공유해 주셔서 대단히 감사합니다! –

관련 문제