QLPreviewController не отображает файл PDF, когда приложение приходит из фона - PullRequest
0 голосов
/ 01 ноября 2019

Я использую QLPreviewController для отображения файла PDF. Ниже приведен код для отображения файла.

-(void)viewDidLayoutSubviews {
    [super viewDidLayoutSubviews];

    QLPreviewController* preview = [[QLPreviewController alloc] init];
    preview.dataSource = self;
    preview.delegate = self;

    [self addChildViewController:preview];

    preview.view.frame = CGRectMake(0, 0, self.contentView.frame.size.width, self.contentView.frame.size.height);

    [self.contentView addSubview:preview.view];
    [preview didMoveToParentViewController:self];
}

//Delegates and Datasource of QLPreviewController

- (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)previewController
{
    return 1;
}

- (void)previewControllerDidDismiss:(QLPreviewController *)controller
{
}

- (id)previewController:(QLPreviewController *)previewController previewItemAtIndex:(NSInteger)idx
{
    return [NSURL fileURLWithPath:self.localFilePath];
}

Я могу отлично показать файл PDF, но если я вернусь из фона, QLPreviewController не сможет показать файл. Это дает мне следующую ошибку.

[по умолчанию] Ошибка при получении размера файла (файл: /// private / var / mobile / Containers / Data / Application / C1022DC7-D49E-45BA-9967-F60AF5898AC1 / tmp / 2015-05-22% 2016.10.36_xxxxx.pdf) с ошибкой (Error Domain = NSCocoaErrorDomain Code = 260 "Файл« 2015-05-22 16.10.36_xxxxx.pdf »не может быть открыт, поскольку отсутствуеттакой файл. "UserInfo = {NSURL = file: ///private/var/mobile/Containers/Data/Application/C1022DC7-D49E-45BA-9967-F60AF5898AC1/tmp/2015-05-22%2016.10.36_xxxxx.pdf,NSFilePath = / private / var / mobile / Containers / Data / Application / C1022DC7-D49E-45BA-9967-F60AF5898AC1 / tmp / 2015-05-22 16.10.36_xxxxx.pdf, NSUnderlyingError = 0x282f8a220 {Код ошибки = код NSPOSIXErrorDomain =Нет такого файла или каталога "}}) # Generic

Любая помощь будет существенной.

...