2015-10-07 46 views
2

我有一个(对我来说)大问题。 我想从我自己的应用程序发送一个带有空投的vcf文件到另一个iOS设备。我有一个NSData对象,我应该将其转换为vcf文件,并且我应该使用空投将其发送到另一个IOS设备。
NSData对象工作正常,我可以发送电子邮件的VCC文件,但与空投我离开了我的极限。 我尝试了在论坛和developer.apple.com上发现的所有内容。但没有任何工作,我认为原因是,我不知道如何开始修复这个问题。 有没有人有任何想法我怎么能实现它?通过Airdrop发送NSData

THANKS

+0

您接收器的设备是否可以将输入的AirDrop直接导入系统联系人/电话应用程序? – ccjensen

+0

我#对不起,我不知道你的意思。 – Alex

+0

让我试着以不同的方式提出这个问题。您希望在设备上获得哪些体验以减轻AirDrop请求? – ccjensen

回答

1

我相信这大约是你正在寻找的东西:

NSString *contactName = nil; // name of person in vcard 
NSData *vcfData = nil; // vcard data 
NSURL *fileURL = [NSURL fileURLWithPath:[NSTemporaryDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.vcf", contactName]]]; 
NSError *writeError; 
if ([vcfData writeToURL:fileURL options:NSDataWritingAtomic error:&writeError]) { 
    NSArray *activityItems = @[fileURL]; 
    UIActivityViewController *avc = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil]; 
    [self presentViewController:avc animated:YES completion:nil]; 
} else { 
    // failed, handle errors 
} 

如果你仍然想支持提供NSData的一些活动,你将不得不创建符合某些对象UIActivityItemSource协议,并有适当的情况下返回零(有关更多详细信息,请参阅此SO)。您可能会发现Apple的AirDrop sample code项目也有帮助。