Ios 使用UIActivityViewController将PDF附加到电子邮件

Ios 使用UIActivityViewController将PDF附加到电子邮件,ios,swift,swift2,ios9,uiactivityviewcontroller,Ios,Swift,Swift2,Ios9,Uiactivityviewcontroller,我正在使用UIActivityViewController为用户提供在我的应用程序中共享数据的选项。共享的数据是pdf文件 pdf文件存储在服务器上,我执行GET请求下载pdf文件,如下所示: let sessionConfig = NSURLSessionConfiguration.defaultSessionConfiguration() let session = NSURLSession(configuration: sessionConfig, delegate: nil, deleg

我正在使用UIActivityViewController为用户提供在我的应用程序中共享数据的选项。共享的数据是pdf文件

pdf文件存储在服务器上,我执行GET请求下载pdf文件,如下所示:

let sessionConfig = NSURLSessionConfiguration.defaultSessionConfiguration()
let session = NSURLSession(configuration: sessionConfig, delegate: nil, delegateQueue: nil)
let request = NSMutableURLRequest(URL: NSURL(string: userBioLink!)!)
request.HTTPMethod = "GET"
let task = session.dataTaskWithRequest(request, completionHandler: {data, response, err -> Void in
    print("THIS IS THE PDF \(data)")      
    print("Entered share bio function")
})
task.resume()
我正在成功下载pdf。 接下来,我希望用户可以选择共享此pdf。所以我用这个:

let activityItems = "Sharing data"
let actviewcon = UIActivityViewController(activityItems: activityItems , applicationActivities: nil)
self.presentViewController(actviewcon, animated: true, completion: nil)
上述方法也很有效。 但我希望能够做到以下几点:

  • 如果用户选择电子邮件,则PDF将作为附件附加
  • 如果用户选择消息,则在消息中粘贴为文本的pdf的URL
  • 有人能帮我吗。 谢谢。

    您可以试试这个:

    首先,将下载的pdf文件转换为NSData对象

    例如—

     NSData *noteData = [NSData dataWithContentsOfFile:exe.pdf]; 
    
    然后使用MFMailComposeViewController对象“\u mailController”调用下面的方法

     [_mailController addAttachmentData:noteData mimeType:@"text/plain" fileName:@"exe.pdf"];
    
    希望这能奏效。

    您可以尝试以下方法:

    首先,将下载的pdf文件转换为NSData对象

    例如—

     NSData *noteData = [NSData dataWithContentsOfFile:exe.pdf]; 
    
    然后使用MFMailComposeViewController对象“\u mailController”调用下面的方法

     [_mailController addAttachmentData:noteData mimeType:@"text/plain" fileName:@"exe.pdf"];
    
    希望这能奏效