안녕하세요. iOS에서 UIActivityController로 vcard를 공유하려고 하는데요. 카카오톡을 선택하면 깜박한 뒤 반응이 없서요.
기본 연락처에서는 공유하기 선택 후 카카오톡으로 전송하면 정상적으로 연락처가 공유되는 것으로 보아 vcf 파일도 동일하게 전송될 것으로 생각되는데요. 원인은 잘 모르겠어서요.
guard let directoryURL = FileManager.default.urls(for: .cachesDirectory, in: .userDomainMask).first else { return }
var filename = NSUUID().uuidString
if let contact = contacts.first, contacts.count == 1 {
if let fullname = CNContactFormatter().string(from: contact) {
filename = fullname.components(separatedBy: " ").joined(separator: "")
}
}
let fileURL = directoryURL.appendingPathComponent(filename).appendingPathExtension("vcf")
let data = try CNContactVCardSerialization.data(with: contacts)
try data.write(to: fileURL, options: [.atomicWrite])
let activityViewController = UIActivityViewController(activityItems: [fileURL], applicationActivities: nil)
activityViewController.popoverPresentationController?.sourceView = self.view
activityViewController.popoverPresentationController?.sourceRect = self.view.frame
present(activityViewController, animated: true, completion: nil)