Sandbox Entitlements und das Schreiben von Dateien

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

  • Sandbox Entitlements und das Schreiben von Dateien

    Hi!

    Wie Ihr vielleicht hier gelesen habt, werde ich mich damit beschäftigen (müssen), eine bestehende App in den Mac App Store zu bringen. Bei der Abwägung meiner Alternativen ergeben sich besonders zum Sandboxing Fragen ... bisher noch theoretisch, denn ich würde mir gerne vor einer Umsetzung über die Konsequenzen klar werden.

    Eigentlich liest / schreibt meine App nur Dateien über den "Open"- bzw. "Save"-Dialog, so dass ich an das Entitlement "com.apple.security.files.user-selected.read-write" dachte ... bis mir einfiel, dass es eine Ausnahme gibt. Nun bin ich mir nicht sicher, ob dieses Konstrukt in einer sandboxed App überhaupt möglich ist, oder ob ich die Funktion entfernen müsste:

    Es gibt Fälle, in denen parallel beim Sichern einer Datei eine zweite mit gleichem Namen, aber anderer Extension im gleichen Ordner gespeichert wird. Nach meinem Verständnis würde dies nicht mehr funktionieren, da diese Aktion nicht vom Benutzer initiiert wurde und somit die Sandbox nicht entsprechend erweitert wurde. So steht in den Unterlagen

    When you enable user-selected file access, you gain programmatic access to [...] files the user saves using an NSSavePanel object

    Eigentlich schon eindeutig, aber zur Sicherheit nachgefragt: Stimmt mein Verständnis, und das schreiben dieser zusätzlichen Dateien ist mit einer MAS App nicht mehr im gleichen Ordner möglich? Gibt es andere Möglichkeiten, derartige Dateien zu speichern, ausser das App-Design ganz umzustellen und diese z. B. im App-Container unter ~/Library/Containers abzulegen?

    Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.
  • Nein aber du kannst ja beim Speichern statt einer Datei einfach einen Ordner zum speichern auswählen lassen und den Dateinamen selber vergeben. Dann kannst du beliebig viele Dateien dort hineinschreiben.

    muss die zweite datei denn unbedingt in den gleichen Ordner wie die erste datei? Kannst du die nic irgendwo in der sandbox speichern?

    Gruss

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)
  • Thallius schrieb:

    muss die zweite datei denn unbedingt in den gleichen Ordner wie die erste datei? Kannst du die nic irgendwo in der sandbox speichern

    Doch, das wäre (wie oben erwähnt) eine Option ... allerdings mit erheblichen Auswirkungen auf das Design dieser App und seiner "iOS-Brüder", sowie für die bisherigen Benutzer. Ich würde es also lieber vermeiden.

    Grüsse, Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.