私のアプリケーションのドキュメントタイプのアイコンを登録しようとしています。 Declaring New Uniform Type Identifiersを読み、/Developer/Examples/Sketch
を見た後、私は私のInfo.plist
にこのような何かを思い付いた:アプリケーションのドキュメントタイプのアイコンを登録する
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string>com.mycompany.myextension</string>
</array>
<key>NSDocumentClass</key>
<string>NSString</string>
</dict>
</array>
...
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeDescription</key>
<string>Blah blah blah</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.data</string>
</array>
<key>UTTypeIconFile</key>
<string>My-file-icon.icns</string>
<key>UTTypeIdentifier</key>
<string>com.mycompany.myextension</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>myextension</string>
</array>
</dict>
</dict>
</array>
さて、すべてはなど、私は私の拡張子を持つファイルをクリックしたときに私のプログラムが開かれた。すなわち、罰金とダンディですしかし、文書アイコンはOSに登録されていません。すなわち、私は美しいMy-file-icon.icns
の代わりに醜い空白のアイコンが表示されます。上記のplistに何か不足していると思う?
うん、それだった。 CFBundleTypeIconFileはCFBundleDocumentTypesになければなりません。 – svintus