Lesen von Dateien mit gleicher File-Extension, aber ungleichem UTI

  • Lesen von Dateien mit gleicher File-Extension, aber ungleichem UTI

    Hi!

    Einige meiner User haben ein Problem mit "fremden" UTIs, das ich leider bei mir nicht reproduziert bekomme:

    Meine dokumentent-basierte Mac OS X App liest z. B. Dateien mit der Erweiterung ".JEF". Da für diese Dateierweiterung seinerzeit kein allgemeiner UTI existierte, habe ich einen entsprechenden in der Info.plist exportiert. Nun sind mittlerweile Apps eines anderen Anbieters auf dem Markt, die auch JEF-Dateien lesen / schreiben, dieser hat ebenfalls eigene UTIs definiert / exportiert.

    Als Ergebnis werden bei manchen (nicht allen) Benutzern, der beide Apps installiert hat, JEF-Dateien in meinem Öffnen-Dialog ausgegraut. Der Versuch, über den Finder zu Öffnen, führt zu der Fehlermeldung "The document ... could not be opened. StitchBuddy can not open files in the "Janome" format". Doch, kann es, aber ich vermute, dass hier JEF-Dateien den "fremden" UTI bekamen. Bei mir kann ich es leider nicht reproduzieren, auch wenn ich die andere App installiere ... vielleicht liegt es an der Installations-Reihenfolge bzw. die der Registrierung in den LaunchServices?

    Wie löst man diesen Konflikt sauber? Mein Ansatz wäre, die UTIs der anderen App in meiner Info.plist zu importieren und als Rolle "Viewer" zu hinterlegen ... Habt ihr bessere Ideen? Oder liege ich mit meiner Vermutung vielleicht vollkommen daneben? Mir fehlen noch bessere Kenntnisse der LaunchServices ...

    Ciao, Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.
  • Hilfe, hab' ich zu verwirrend geschrieben oder kann mir keiner einen Tipp geben?

    Muss man wirklich UTIs "fremder" Apps importieren, wenn diese Dateien mit der gleichen Erweiterung wie mein Programm nutzen? Es erscheint mir unlogisch, sollten doch die LaunchServices anhand meiner Info.plist erkennen, dass meine App die Dateien verarbeiten kann.

    Aber wie kann es dann zu dem Effekt kommen, dass bei manchen Usern eben diese Dateien im "Open"-Dialog nicht ausgewählt werden können (d. h. ausgegraut sind)?

    Mist, dass ich den Effekt einfach nicht reproduziert bekomme!

    Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.
  • Nur für's Archiv: eine Aufnahme der fremden UTIs in den Schlüssel LSItemContentType des Dictionaries CFBundleDocumentTypes der dokumentbasierten App bzw. der Quick Look / Spotlight Plugins hat geholfen (CFBundleTypeRole ist "Viewer" bei der App). Ein Importieren der UTIs habe ich mir gespart: Wenn die exportierende App nicht installiert ist, habe ich schliesslich eh kein Problem und brauche die Definitionen nicht.

    Nur gut, dass es nur einen anderen Softwareanbieter für diese Dateitypen gibt, sonst würde das schnell unübersichtlich. In Apple's Elfenbeinturm sollte es für einen Dokumententyp (inkl. Erweiterung) wohl nur einen Urheber geben, der auch direkt die UTIs definiert. Leider sieht das wirkliche Leben anders aus...

    Matthias
    Diese Seite bleibt aus technischen Gründen unbedruckt.