Ich versuche, ein Symbol für den Dokumenttyp meiner App zu registrieren. Nach der Lektüre Declaring New Uniform Type Identifiers und Blick auf /Developer/Examples/Sketch
kam ich mit so etwas wie dies in meinem Info.plist
up:Registrieren eines Symbols für den Dokumenttyp meiner Anwendung
<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>
Jetzt ist alles schön und gut, das heißt mein Programm geöffnet wird, wenn ich auf eine Datei mit meiner Erweiterung klicken, usw. Allerdings ist das Dokumentensymbol nicht mit dem Betriebssystem registriert, dh ich sehe ein hässliches leeres Symbol anstelle meiner schönen My-file-icon.icns
. Ich vermute, dass ich etwas in der obigen Liste verpasse, irgendwelche Ideen?
Ja, das war es. CFBundleTypeIconFile muss in CFBundleDocumentTypes enthalten sein. – svintus