NSDocumentベースのアプリケーションの次のバージョンでは、ドキュメントパラメータ、つまりInfo.plist> CFBundleDocumentTypesおよびUTExportedTypeDeclarationsの値を改訂します。具体的には、平らなNSPersistentDocumentから文書パッケージ(BSManagedDocumentの助けを借りて)に変更しています。Document Parametersを変更した後、NSCocoaErrorDomain 256を開く* new * docs
改訂されたアプリケーションでは、一般的なアイコンでFinderに表示されますが、そのような新しいドキュメントを閉じて再オープンしようとすると、-[NSDocumentController openDocumentWithContentsOfURL:display:completionHandler:]
が失敗し、NSCocoaErrorDomainにコード256、説明MyAppがこのタイプのファイルを開くことができず、失敗の理由MyAppがこのタイプのファイルを開くことができないため、 "newDoc.myExtension"を処理できませんでした。
私はいくつかの重要なパラメータCFBundleDocumentTypesとUTExportedTypeDeclarationsがあることを理解していますが、これらはすべて正しいか、このエラーが発生します。この場合、それらは正しい。私は、私の組み込み製品のInfo.plistと、動作する別の同様のアプリのInfo.plistを比較することでこれを確認しました。
また、LSRegisterURL()
とinUpdate = true
をmain()から呼び出そうとしましたが、それは役に立ちませんでした。
何が問題なのでしょうか?私はMacOS 10.12.6で動作していて、MacOS 10.13 SDKとXcode 9で構築しています。