Вставьте vCard из UIPasteBoard в Mail

Я копирую vcard (входит в комплект) в общий картон следующим образом:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"AM" ofType:@"vcf"]; NSData *data = [NSData dataWithContentsOfFile:filePath]; [[UIPasteboard generalPasteboard] setData:data forPasteboardType:(NSString*)kUTTypeVCard]; 

Затем я хотел бы, чтобы пользователь мог вставить его в электронное письмо. Однако Mail не предлагает вариант «Вставить», когда он был скопирован в картон. Я что-то делаю неправильно или Mail не распознает тип картона?

2 Solutions collect form web for “Вставьте vCard из UIPasteBoard в Mail”

Вы можете просто добавить его прямо в сообщение, например

 MFMailComposeViewController *mailViewController = [[MFMailComposeViewController alloc] init]; NSString *filePath = [[NSBundle mainBundle] pathForResource:@"AM ofType:@"vcf"]; NSData *data = [NSData dataWithContentsOfFile:filePath]; [mailViewController addAttachmentData:data mimeType:@"text/vcard" fileName:@"AM.vcf"]; mailViewController.mailComposeDelegate = self; [self presentModalViewController:mailViewController animated:YES]; [mailViewController release]; 

Все в вашем коде выглядит правильно, поэтому если Mail не позволит вам вставить его, это означает, что Mail не поддерживает вставку этого типа.

Изменить: попробуйте с помощью NSDictionary:

 UIPasteboard *gpBoard = [UIPasteboard generalPasteboard]; NSData *data = [NSData dataWithContentsOfFile:filePath]; NSDictionary *item = [NSDictionary dictionaryWithObjectsAndKeys: data, (NSString *)kUTTypeVCard, nil]; gpBoard.items = [NSArray arrayWithObjects:item, nil]; 
  • NSSearchPathForDirectoriesInDomains возвращает неверный каталог
  • Создание Launch Screen.xib для iOS8
  • Можно ли добавить второй тег в UIbutton?
  • Основные данные и GCD: передача правильного контекста управляемого объекта в пользовательские NSManagedObjects
  • Ресурсы в пользовательских инфраструктурах iOS
  • Какова высота UITabBar на iOS 8, iOS 9, iOS 10 и iOS 11?
  • UIImagePickerController Снятая с хранения память
  • Зачем использовать NSFileManager, а не просто использовать метод writeToFile NSData: atomically: при создании нового файла?
  • Как создать представление с кнопкой закрытия над углом?
  • Динамический вызов частного API без регистрации в App Store
  • Делегаты в Objective-c
  • открытый URL внутри представленного MFMessageComposeViewController
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.