Я використовую SharedPreferences
в додатку для Android. Я використовую і те, commit()
і apply()
метод із загальних уподобань. Коли я використовую AVD 2.3, він не показує помилок, але коли я запускаю код в AVD 2.1, apply()
метод показує помилку.
То яка різниця між цими двома? І тільки використовуючи, чи commit()
можу я зберігати значення переваг без проблем?
apply()
виграє. Таким чином, ви можете використовувати apply()
замість commit()
безпечного, якщо ви переконаєтесь, що вашим додатком використовується лише один SharedPreferences.Editor.
commit()
?
apply()
буде асинхронно робити введення / виведення диска, поки воноcommit()
буде синхронним. Таким чином, ви дійсно не повинні дзвонитиcommit()
з потоку інтерфейсу користувача.