2016-11-14 77 views
0

哪些是我从互联网上下载PDF文件并在应用程序之后查看的替代方法?在本地保存PDF文件并能够在应用程序外查看

现在我正在下载它并在UIWebView中显示它,但我希望能够在其他地方下载它。

NSURL *yourURL = [NSURL URLWithString:self.currentInventoryOfFixtures.pdf.url]; 
NSURLRequest *request = [NSURLRequest requestWithURL:yourURL]; 
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil]; 

NSURL *documentsURL = [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]; 
     documentsURL = [documentsURL URLByAppendingPathComponent:@"file.pdf"]; 

[data writeToURL:documentsURL atomically:YES]; 

我想使用UIActivityController,并给予用户在他的电子邮件地址发送它的可能性。

+0

问题是什么,使用UIActivitycontroller – Vinodh

+0

我在它具有应用下载按钮做好整个工作的目的。 – Meeshoo

+0

你是什么意思“在别处下载”? iOS文件系统是沙盒。 – Gruntcakes

回答

0

下载的PDF文件后,且该文件的路径,你可以使用UIActivityViewController这样:

let fileSaved = downloadedFilePath() //Already Downloaded File Path 

if let data = NSData(contentsOfFile: fileSaved) { 
    let dataToShare = [data] 
    let activityViewController = UIActivityViewController(activityItems: dataToShare, applicationActivities: nil) 

    activityViewController.completionWithItemsHandler = {(string: String?, result: Bool, items: [AnyObject]?, error:NSError?) -> Void in 
     print("Completed") 
    } 

    if #available(iOS 9.0, *) { 
     activityViewController.excludedActivityTypes = [ 
      UIActivityTypePostToFacebook, 
      UIActivityTypePostToTwitter, 
      UIActivityTypePostToWeibo, 
      UIActivityTypeAssignToContact, 
      UIActivityTypePostToFlickr, 
      UIActivityTypePostToVimeo, 
      UIActivityTypePostToTencentWeibo, 
      UIActivityTypeCopyToPasteboard 
     ] 
    } 
    self.presentViewController(activityViewController, animated: true, completion: nil) 
} 
相关问题