Angesichts einer App namens ExampleApp, ich möchte "~/Library/Logs/ExampleApp" grundsätzlich ohne Verwendung hart codierter Pfade finden. Es gibt NSSearchPathForDirectoriesInDomains, mit denen Sie mithilfe des NSApplicationSupportDirectory-Suchbegriffs Dinge wie "~/Library/Application Support/ExampleApp" finden können, aber es scheint kein Suchbegriff für die Protokollierung zu sein.Wie programmiere ich programmgesteuert das Protokollierungsverzeichnis des Benutzers?
Ich glaube nicht, ~/Library/Logs ist nicht Standard, da CrashReporter seine Protokolle dort legt.
FYI: Wenn Sie den Mac App Store verwenden möchten, können Sie das Verzeichnis Library/Logs nicht verwenden, es ist kein zugelassenes Verzeichnis. Sie müssen das Protokoll einer Anwendung in den Ordner innerhalb der Anwendungsunterstützung schreiben. – CRD
CRD: Ich dachte, eine Sandbox-App hatte uneingeschränkten Zugriff auf ihre Container und Unterverzeichnisse? Zum Beispiel existiert auf meinem System ein Verzeichnis ~/Library/Containers/com.apple.TextEdit/Data/Library/Logs (es ist nichts drin) –
Das könnte eine Grauzone sein, aber ich denke eine * Mac App Die Sandbox-App Store * erhält Zugriff auf die Schnittmenge der vom MAS und dem Sandbox-Container zugelassenen Ordner. – CRD