UIDocumentInteractionController
UIDocumentInteractionController主要是用来实现同设备上App之间的共享文档,以及文档预览、打印、发邮件和复制等功能。它的使用非常简单.
首先通过调用它唯一的类方法interactionControllerWithURL:,并传入一个URL(NSURL),为你想要共享的文件来初始化一个实例对象。然后UIDocumentInteractionControllerDelegate,然后显示菜单和预览窗口。
let url = Bundle.main.url(forResource: "test", withExtension: "pdf")
if url != nil {
let documentInteractionController = UIDocumentInteractionController.init(url: url!)
documentInteractionController.delegate = self
documentInteractionController.presentOpenInMenu(from: self.view.bounds, in: self.view, animated: true)
}
AirDrop --- UIActivityViewController
iOS并没有直接提供AirDrop的实现接口,但是使用UIActivityViewController的方法唤起AirDrop,进行数据交互。
UIActivityViewController类是一个标准的ViewController,提供了几项标准的服务,比如复制项目至剪贴板,把内容分享至社交网站,以及通过Messages发送数据等等。在iOS 7 SDK中,UIActivityViewController类提供了内置的AirDrop功能。
如果你有一些数据一批对象需要通过AirDrop进行分享,你所需要的是通过对象数组初始化UIActivityViewController,并展示在屏幕上:
UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];
[self presentViewController:controller animated:YES completion:nil];