【发布时间】:2016-09-03 17:02:53
【问题描述】:
我已经为此苦苦挣扎了很久,因为我找不到任何详细的例子。
在我的应用中,我有一组自定义数据,我想通过 AirDrop 将这些数据发送给具有相同应用的其他用户。
第一步是发送数据:
@IBAction func share_Button_Click(sender: UIBarButtonItem)
{
let dataToShare: NSData = getMyCustomNSData()
let controller = UIActivityViewController(activityItems: [dataToShare], applicationActivities: nil)
controller.excludedActivityTypes = [UIActivityTypePostToFacebook, UIActivityTypePostToTwitter, UIActivityTypePostToWeibo, UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, UIActivityTypePostToFlickr, UIActivityTypePostToTencentWeibo, UIActivityTypeMail, UIActivityTypeAddToReadingList, UIActivityTypeOpenInIBooks, UIActivityTypeMessage]
self.presentViewController(controller, animated: true, completion: nil)
}
这会将我的数据转换为 NSData 对象,用户获得 AirDrop 共享选项,并将数据发送到另一部手机。到目前为止一切顺利...
但是其他用户的应用怎么知道如何接收呢?
我已经阅读了自定义 UTI 类型并声明了一种,但老实说,我不知道该在声明中添加什么。你如何向 iOS 表明你发送的数据符合这个特定的 UTI?
网上到处都有 AirDrop 示例,但它们专注于共享图像等常见类型,我发现没有人详细共享自定义数据类型。
谁能帮忙?
【问题讨论】: