Wo speichert Mountain Lion's Calendar.app seine Einstellungen?

Das Programm Calendar.app hat eindeutig einige Einstellungen, die einstellbar sind.

Geben Sie hier die Bildbeschreibung ein

Wenn ich jedoch tippe defaults read com.apple.Calendar(und verschiedene Permutationen der Großschreibung), erhalte ich die Meldung Domain com.apple.Calendar does not exist. Außerdem finde ich keine Datei ~/Library/Preferencesmit einem Zeitstempel, der mit den von mir vorgenommenen Änderungen übereinstimmt.

Wo speichert das Mountain Lion Calendar-Programm seine Einstellungen?

Antworten (2)

Nach einer umfangreichen Suche in meinem Benutzerverzeichnis habe ich eine Datei gefunden, die mit der Calendar.app verknüpft ist. Wenn Sie die im Calendar.app-Bundle enthaltene Info.plist überprüfen, werden Sie feststellen, dass die Kennung für die Kalender-App immer noch iCal ist und die Datei, die Sie suchen, ist wie "com.apple.iCal"

Die Dateien, die ich mit der folgenden Suche gefunden habe, sind:

$ find /Users/yourusername/ -name com.apple.iCal*

Dateien gefunden:

/Users/yourusername/Library/Application Support/SyncServices/Local/clientdata/com.apple.iCal
/Users/yourusername/Library/Caches/com.apple.helpd/Generated/com.apple.iCal.help
/Users/yourusername/Library/Caches/com.apple.helpd/SDMHelpData/AppleExtra/English/HelpSDMIndexFile/com.apple.iCal.help
/Users/yourusername/Library/Caches/com.apple.iCal
/Users/yourusername/Library/Preferences/ByHost/com.apple.iCal.helper.E4000000-0000-0000-0000-000000000000.plist
/Users/yourusername/Library/Preferences/ByHost/com.apple.iCal.helper.E4000000-0000-0000-0000-000000000000.plist.lockfile
/Users/yourusername/Library/Preferences/com.apple.iCal.helper.plist
/Users/yourusername/Library/Preferences/com.apple.iCal.helper.plist.lockfile
/Users/yourusername/Library/Preferences/com.apple.iCal.plist
/Users/yourusername/Library/Preferences/com.apple.iCal.plist.lockfile
/Users/yourusername/Library/Saved Application State/com.apple.iCal.savedState/

Außerdem bin ich mir ziemlich sicher, dass iCal in Mountain Lion iCloud verwendet, um App-Einstellungen zu speichern, oder zumindest sollte es so sein, da es sich um eine cloudlastige App handelt, die die Gerätegrenze von iOS und OS X überspannt. Ich muss das weiter überprüfen und sehen, wie es funktioniert, wenn iCloud aktiviert ist oder nicht ...

Es sollte iCloud verwenden, wie in der Entwicklerdokumentation im Thema Designing for Key-Value Data in iCloud angegeben

Um diskrete Werte in iCloud für App-Einstellungen, App-Konfiguration oder App-Status zu speichern, verwenden Sie den iCloud-Schlüsselwertspeicher.

Gibt es eine Möglichkeit, diesen Schlüsselwertspeicher über die Befehlszeile abzufragen oder zu sehen, welche Einstellungen eine App gespeichert hat?
@Daniel Lawson, der Zugriff auf die Befehlszeile wäre schwierig. Ich würde denken, dass es etwas ist, das eine Codesignatur-ID oder etwas Ähnliches erfordert, um als App für diesen iCloud-Benutzer identifiziert zu werden. Da jede iCloud-fähige App über Speicherplatz in der Cloud verfügt, auf den nur sie Zugriff hat ...
Wenn ich eine Einstellung ändere, während ich offline bin, oder wenn ich ein Konto auf meinem Mac einrichte, das kein entsprechendes iCloud-Konto hat, bleiben die Einstellungen jedoch bestehen – also müssen einige Einstellungen lokal gespeichert werden …
@DanielLawson haben Sie versucht, in ~/Library/Mobile Documents zu suchen, möglicherweise werden dort auch Kopien von App-Einstellungen abgelegt macobserver.com/tmo/answers/how_to_locally_back_up_documents
Wenn es drin ist, kann ich es nicht finden. Aber gute Hinweise.
Haben Sie auch die Lri-Antwort überprüft, ist es wahrscheinlich, dass iCal eine Code-signierte App ist
Als Anmerkung, ich glaube nicht, dass der Key-Value-Speicher in Mobile Documents gespeichert wird, es ist eine andere Art von Speicher.

Die Bundle-ID ist immer noch com.apple.iCal. Sie können es anhand von Info.plistoder mit etwas wie sehen bid() { osascript -e "id of app \"$*\""; }.

Die Eigenschaftsliste für die Einstellungen befindet sich also immer noch in ~/Library/Preferences/com.apple.iCal.plist. Es wird wahrscheinlich dorthin verschoben, ~/Library/Containers/com.apple.iCal/Data/Library/Preferences/com.apple.iCal.plistwenn Apple den Kalender in einer Sandbox installiert.