Desde hace poco tiempo (supongo * desde Mac OS X 10.10.2) pude borrar mi configuración en NSUserDefaults
via
defaults delete ~/Library/Preference/<my app>.plist
Pero de repente no funciona y mi configuración parece ser muy persistente. También borré manualmente cualquier cosa en "Configuración guardada" y emití el comando anterior para "Contenedores" (aunque el sandboxing estaba desactivado para las pruebas de todos modos).
¿Qué más puede contener mi configuración? Supongo que el próximo reinicio podría borrarlo, pero quiero evitar reiniciar en el futuro.
PD La configuración incluso sobrevivió a un reinicio :-(
macos
default-settings
qwerty_so
fuente
fuente
Respuestas:
Primero, cuando lo use
defaults
, debe omitir el.plist
del nombre de archivo; siempre agrega eso, por lo que si también lo proporcionadefaults
, intentará eliminar "<mi aplicación> .plist.plist".En segundo lugar, creo que cuando especifica la ruta completa al archivo de preferencias que omite
cfprefsd
, que (entre otras cosas) almacena en caché las preferencias utilizadas recientemente. Debería usardefaults delete <my app>
o ejecutarkillall cfprefsd
antes de eliminar las preferencias (pero después de salir de la aplicación).Tenga en cuenta que si la aplicación está aislada,
defaults
es la forma incorrecta de eliminar las preferencias: simplemente eliminecfprefsd
, luego userm
para eliminar todo el contenedor de sandbox de la aplicación (rm ~/Library/Containers/<my app>
) o solo su archivo de preferencias (rm ~/Library/Containers/<my app>/Data/Library/Preferences/<my app>.plist
)fuente
El proceso de registro
~/Library/Containers/
.Creo que las aplicaciones de espacio aislado (App Store) tienen que almacenar sus cosas allí ahora.
fuente