Karena waktu yang singkat (saya (tebak * sejak Mac OS X 10.10.2) saya dapat menghapus pengaturan saya NSUserDefaults
melalui
defaults delete ~/Library/Preference/<my app>.plist
Tapi tiba-tiba itu tidak berfungsi dan pengaturan saya tampaknya super-persisten. Saya juga secara manual menghapus apa pun di bawah "Pengaturan Tersimpan" dan mengeluarkan perintah di atas untuk "Wadah" (meskipun kotak pasir dimatikan untuk pengujian tetap).
Apa lagi yang bisa menampung pengaturan saya? Saya kira reboot berikutnya mungkin menghapusnya tetapi saya ingin menghindari reboot di masa depan.
PS Pengaturan bahkan bertahan reboot :-(
macos
default-settings
qwerty_so
sumber
sumber
Jawaban:
Pertama, saat menggunakan
defaults
, Anda harus meninggalkan.plist
dari nama file - selalu menambahkan itu, jadi jika Anda juga menyediakannyadefaults
akan mencoba menghapus "<app saya> .plist.plist".Kedua, saya berpikir bahwa ketika Anda menentukan path lengkap ke file preferensi yang Anda bypass
cfprefsd
, yang (antara lain) cache preferensi yang baru saja digunakan. Anda harus menggunakandefaults delete <my app>
atau menjalankankillall cfprefsd
sebelum menghapus preferensi (tetapi setelah berhenti dari aplikasi).Perhatikan bahwa jika aplikasi tersebut adalah kotak pasir,
defaults
adalah cara yang salah untuk menghapus preferensi - cukup bunuhcfprefsd
, kemudian gunakanrm
untuk menghapus seluruh wadah kotak pasir aplikasi (rm ~/Library/Containers/<my app>
) atau hanya file preferensi (rm ~/Library/Containers/<my app>/Data/Library/Preferences/<my app>.plist
)sumber
Check in
~/Library/Containers/
.Saya pikir aplikasi sandboxed (App Store) harus menyimpan barang-barang mereka di sana sekarang.
sumber