通过WhatsApp分享PDF

我想直接与WhatsApp共享PDF。

以下是我在iOS应用程序中发现WhatsApp中发送文本和图像的链接,但无法找到如何将PDF直接发送到WhatsApp。

在iOS应用程序中通过WhatsApp共享图像/文本

您可以使用Share Extension(UIActivityViewController)来共享您的pdf fileURL。 请注意,用户必须选择WhatsApp应用程序来共享文件。 如果您想首先检查是否安装了WhatsApp,则需要注意编辑info.plist并将whatsapp添加到LSApplicationQueriesSchemes数组:

在此处输入图像描述


 func sharePdfWhatsApp(url: URL) { let whatsappURL = URL(string:"whatsapp://app")! // this will make sure WhatsApp it is installed if UIApplication.shared.canOpenURL(whatsappURL) { let controller = UIActivityViewController(activityItems: [url], applicationActivities: nil) present(controller, animated: true) { print("done") } } } 

首先,您必须将PDF文件检索为Data格式。

 var pdfDATA:Data! 

一旦您获得上述变量的数据,您可以在代码下运行以通过WhatsApp发送PDF。

 self.pdfDATA = try? Data.init(contentsOf: yourFilepath) let activitycontroller = UIActivityViewController(activityItems: [self.pdfDATA], applicationActivities: nil) if activitycontroller.responds(to: #selector(getter: activitycontroller.completionWithItemsHandler)) { activitycontroller.completionWithItemsHandler = {(type, isCompleted, items, error) in if isCompleted { print("completed") } } } activitycontroller.excludedActivityTypes = [UIActivityType.airDrop] activitycontroller.popoverPresentationController?.sourceView = buttonItemSize self.present(activitycontroller, animated: true, completion: nil)