Я создал свой PDF Viewer и хочу связать с ним формат файла PDF, чтобы я мог открыть файл PDF из Finder , Терминал или Drag & Drop .Если я запускаю приложение, а затем пытаюсь открыть pdf одним из 3-х способов, упомянутых до того, как документ отображается правильно, но если я делаю то же самое, когда приложение не открыто, оно падает.
Здесьмои CFBundleDocumentTypes
настройки (из файла info.plist ):
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>pdf</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>pdfformat</string>
<key>CFBundleTypeName</key>
<string>pdf</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSHandlerRank</key>
<string>Default</string>
<key>LSItemContentTypes</key>
<array>
<string>giannigianino.Mirror</string>
</array>
<key>LSTypeIsPackage</key>
<integer>1</integer>
</dict>
</array>
Здесь, где происходит сбой из отчета о сбое:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 username.Mirror 0x0000000106a4d6e2 _T06Mirror11AppDelegateC11applicationSbSo13NSApplicationC_SS8openFiletF + 1090
1 username.Mirror 0x0000000106a4d749 _T06Mirror11AppDelegateC11applicationSbSo13NSApplicationC_SS8openFiletFTo + 89
2 com.apple.AppKit 0x00007fff9f355bd3 -[NSApplication _doOpenFile:ok:tryTemp:] + 322
3 com.apple.AppKit 0x00007fff9f1407df -[NSApplication(NSAppleEventHandling) _openDocumentURLs:withCompletionHandler:] + 996
Ятакже с использованием пользовательского значка PDF, но он не отображается, даже если в качестве предпочтительного приложения для моего приложения открыты все файлы PDF.