我正在使用UIDocumentInteractionController
與其他應用程序共享文檔(PDF)。UIDocumentInteractionController:發送到實例的無法識別的選擇器
與不同應用程序的視圖顯示得很好,但當我按任何應用程序打開/保存/共享文件時,我的應用程序崩潰。
我得到了Unrecognised selector sent to instance
錯誤。
看來這個錯誤來自文件的URL我給(不知道壽):
[UIDocumentInteractionController interactionControllerWithURL:url];
DocumentInteractionManager.h:
@interface DocumentInteractionManager : UIViewController <UIDocumentInteractionControllerDelegate>
@property (nonatomic, retain) UIDocumentInteractionController* documentInteractionController;
@property (nonatomic, copy) NSURL *url;
- (void)openDocumentFromRect:(UIView*)view withURL:(NSURL*)fileUrl;
@end
DocumentInteractionManager.m:
@implementation DocumentInteractionManager
@synthesize documentInteractionController;
@synthesize url;
//fileUrl is something like: file:///var/mobile/Containers/Data/Application/[APP]/Library/file.pdf
- (void)openDocumentFromRect:(UIView*)view withURL:(NSURL*)fileUrl {
self.url = fileUrl;
if (url) {
documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:self.url];
// Configure Document Interaction Controller
[documentInteractionController setDelegate:self];
CGRect rect = [view frame];
[documentInteractionController presentOptionsMenuFromRect:[view frame] inView:view animated:YES];
}
}
@end
編輯:
這裏是我正在創建的網址:[NSURL fileURLWithPath:pdfPath]
注意,它的工作原理,當我使用UIActivityViewController
和共享通過空投
EDIT2:
這裏有一些我得到的不同消息(取決於我選擇的應用程序):
-
周
- 的iBooks:
[__NSCFString URL]: unrecognized selector sent to instance
- 複製:[OS_dispatch_queue URL]:無法識別的選擇發送到實例
- 電子郵件:[NSISLinearExpression URL]:無法識別的選擇發送到實例
什麼想法?
顯示整個錯誤消息,特別是無法識別的選擇器名稱。 – Larme
@Larme其實,它會根據我想要使用的應用而變化。 在iBooks上:[[__NSCFString URL]:在Drpobox上發送給實例的無法識別的選擇器:'[NSISEngine URL]:無法識別的選擇器發送到實例' – Moucheg