Document-Based Application öffnet seit OS X 10.9 ein NSSavePanel bei jedem 2. Speichern eines vorhandenen Dokuments

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Document-Based Application öffnet seit OS X 10.9 ein NSSavePanel bei jedem 2. Speichern eines vorhandenen Dokuments

    Ich habe eine Document-Based Application welche noch aus OS X 10.4 Zeiten stammt. Um Kompatibilität mit OS X 10.4 und für PPC zu gewährleisten verwende ich weiterhin Xcode 3.2.6 und das Mac OS X 10.4 SDK für diese App.

    Damit die App auch unter OS X 10.6, 10.7 und 10.8 problemlos läuft musste ich seinerzeit ein paar kleine Änderungen an der App bzw. am Source Code vornehmen. Die App lief damit unter OS X 10.6, 10.7 und 10.8 problemlos.

    Unter OS X 10.9 tritt jedoch ein sehr seltsames Problem auf, welches ich nicht wirklich verstehe. Nach dem Öffnen eines vorhandenen Dokuments und dem Speichern dieses Dokuments per Ablage > Sichern bzw. CMD+S taucht bei jedem 2. Speichern ein NSSavePanel auf bei welchem man den Namen für das Dokument auswählen soll. Es wird also bei jedem 2. Speichern anscheinend Speichern unter … ausgeführt, aber warum?

    Unter OS X 10.4 - 10.8 funktioniert das Speichern eines vorhandenen Dokuments wunderbar und seit 10.9 taucht bei jedem 2. Speichern ein NSSavePanel auf.

    Hat jemand eine Idee was Apple mit 10.9 beim Speichern eines vorhandenen Dokuments geändert hat oder wonach ich diesbezüglich suchen könnte?
  • Irgendein Problem mit der Sandbox? Ohne es jetzt versucht zu haben: Das taucht auf, wenn die Anwendung das Dokument nicht mehr schreiben kann (z.B. wegen eines Problems mit der security-scoped-URL oder sowas). In dem Fall steht aber auch was auf der Konsole, dort mal geguckt?

    Gruß

    gandhi
  • Wenn ich das richtig verstanden habe, hast Du ja die Sourcen der Anwendung. Da kannst Du ja mal Breakpoints an den entsprechenden Methoden setzen und gucken, wie was aufgerufen wird. In letzter Zeit hat sich doch am Speichermechanismus von Dokumenten einiges getan (etliche Sachen sind jetzt Deprecated, ich glaube "dataOfType: error:" gibt's gar nicht mehr, usw.) Schau' mal in die Doku, da stehe etliche Hinweise zum Ableiten von NSDocument und auch zur Rückwärtskompatibilität. Unterstützt die Anwendung "Autosave"? Werden automatische Backupdateien (mit ~ vorneweg) erstellt? Da hatte ich mal ein ein Problem im Zusammenhang mit Autosave.

    Meine Vermutung: Du verwendest eine alte "deprecated"-Methode und die tut's unter 10.9 nicht mehr richtig.

    schönen Gruß

    gandhi