2016-11-14 78 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) 
} 
相關問題