Saya telah membaca beberapa artikel pemecahan masalah yang berbeda dan Tanya Jawab di mana pelakunya adalah file preferensi yang rusak untuk aplikasi atau proses. Biasanya solusinya adalah menghapus file preferensi buruk dan memungkinkan file preferensi default baru muncul setelah memulai ulang perangkat lunak apa pun yang mengalami kesalahan fungsi.
Bagaimana file preferensi menjadi rusak? Apakah ini hanya kesalahan membaca / menulis tingkat rendah, atau adakah kesalahan tingkat yang lebih tinggi terjadi dalam beberapa kasus? Apakah XML hanya salah format atau salah eja?
Saya percaya plutil
bisa memberi tahu Anda jika ada kesalahan sintaksis dengan file tersebut, tetapi sekali lagi, bagaimana kesalahan itu diperkenalkan? Saya tidak jelas tentang sumber yang biasa untuk file yang rusak ini. Terima kasih.
-writeToFile:atomically:YES
("data ditulis ke file cadangan, dan kemudian - dengan asumsi tidak ada kesalahan terjadi - file cadangan diubah namanya menjadi nama yang ditentukan"). Fungsi POSIXrename()
menjamin file akan ada "bahkan jika sistem harus crash di tengah operasi".Saya berani bertaruh bahwa dalam hampir setiap kasus, secara sintaksis tidak ada yang salah dengan file plist. Fungsi Apple untuk memuat dan menyimpan data plist mendapatkan banyak perhatian dan banyak penggunaan. Hampir setiap bug pasti telah ditemukan dan diperbaiki sekarang.
File preferensi aplikasi (plist) hanya menyimpan beberapa struktur data dalam memori pada disk. Jadi, jika aplikasi memiliki bug yang menyebabkan sesuatu tidak disetel dengan benar, itu akan disimpan.
Seringkali ketika sebuah aplikasi mulai melakukan kesalahan, Anda bisa berhenti dan mulai lagi. Itu me-reset banyak bagian itu, dan dapat memperbaiki masalah. File preferensi dimuat ulang dari disk, jadi, jika bagian yang terpengaruh dari aplikasi disimpan dalam preferensi yang persisten, memulai ulang aplikasi tidak akan berdampak: nilai buruk hanya akan dimuat lagi. Saat itulah menghapus file preferensi dapat membantu. Ini seperti memulai ulang aplikasi, tetapi untuk hal-hal yang disimpan.
Hal-hal ini dapat terjadi karena programmer menganggap bahwa data yang dimiliki aplikasi mereka benar. Jika warna hanya dapat dipilih oleh pengguna mengklik pada kontrol roda warna standar, mereka mungkin tidak melakukan pekerjaan ekstra untuk memverifikasi bahwa itu benar sebelum menggunakannya. (Sebagai perbandingan, aplikasi seperti Safari melakukan banyak pekerjaan ekstra untuk memverifikasi semuanya, karena memuat dan menjalankan file langsung dari internet.)
Sisi positifnya adalah hampir selalu benar, dan jauh lebih mudah jika Anda menganggap bahwa nilai internal sudah benar. The downside adalah bahwa jika nilai buruk menyelinap masuk entah bagaimana (seperti pengguna melakukan sesuatu yang benar-benar tak terduga), semuanya bisa berantakan sampai semuanya diatur ulang.
sumber
Sebagai warga senior yang cacat teknologi, saya menemukan File Preferensi iTunes saya rusak dan menyebabkan perjanjian lisensi muncul setiap kali saya membuka iTunes. Plus, semua preferensi saya harus diatur ulang. Saya percaya jawaban di atas benar, karena tepat sebelum saya memiliki masalah ini, saya dipaksa untuk melakukan shutdown paksa komputer saya (masalah listrik di daerah) dan me-reboot / setengah me-reboot beberapa kali. Aplikasi dihentikan sebelum instruksi / penulisan selesai. Tetapi perbaikan untuk menelurkan file preferensi iTunes baru ditunjukkan secara online dan sangat mudah dilakukan. Itu memperbaiki masalah.
sumber