Я использую несколько SharedPreferences для хранения данных в своем приложении. Некоторые предпочтения используются во многих действиях.
Я знаю, что SharedPreferences внутренне поддерживаются картой для быстрого доступа к чтению и записываются на SD-карту при изменении настроек.
Интересно, какой путь лучше, если доступ к sharedpreference осуществляется из-за большого количества действий:
- Создайте его в каждом действии, используя контекст активности.
- Мгновенное действие в каждом действии, но с использованием контекста приложения.
- Поместите его, например. класс Application и экземпляр его только один раз там, похожий на синглтон.
Если я использую 1. решение, есть ли объект sharedpreference для каждого действия? И будет ли разрушена внутренняя карта sharedpreference при уничтожении активности?
Если я использую 2. решение, будет только один экземпляр, хотя я вызываю getSharedPreferences в каждом действии? И будет ли внутренняя карта в памяти до тех пор, пока приложение будет живым?
Надеюсь, кто-то знает, как Android его обрабатывает внутри.