Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Класс Preferences помогает хранить параметры приложения в хранилище ключей и значений.
Начало работы
Чтобы начать использовать этот API, ознакомьтесь с руководством по началу работы с Xamarin.Essentials, чтобы правильно настроить и установить библиотеку в проектах.
Использование Preferences
Добавьте ссылку на Xamarin.Essentials в своем классе:
using Xamarin.Essentials;
Чтобы сохранить значение определенного ключа в параметрах, используйте следующий код:
Preferences.Set("my_key", "my_value");
Чтобы извлечь значение из настроек или значение по умолчанию (если значение не задано в настройках):
var myValue = Preferences.Get("my_key", "default_value");
Чтобы проверить, существует ли определенный ключ в параметрах, используйте следующий код:
bool hasKey = Preferences.ContainsKey("my_key");
Чтобы удалить ключ из параметров, используйте следующий код:
Preferences.Remove("my_key");
Чтобы удалить все параметры, используйте следующий код:
Preferences.Clear();
Совет
Приведенные выше методы принимают необязательный параметр типа string с именем sharedName. Этот параметр используется для создания дополнительных контейнеров для настроек, которые полезны в некоторых вариантах использования. Один из сценариев заключается в том, что приложение должно обмениваться настройками с расширениями или приложением наблюдения. Особенности реализации для платформ см. ниже.
Поддерживаемые типы данных
Следующие типы данных поддерживаются в классе Preferences:
- bool
- double
- int
- float
- long
- string
- DateTime
Интеграция с параметрами системы
Настройки хранятся в собственном коде, что позволяет интегрировать параметры в собственные системные параметры. Для интеграции с платформой используйте документацию и примеры платформы:
- Apple: реализация пакета параметров iOS
- Параметры watchOS
- Android: начало работы с экранами параметров
Сведения о реализации
Значения DateTime хранятся в двоичном 64-битном формате (длинное целое число) с использованием двух методов, определяемых классом DateTime. Метод ToBinary используется для шифрования значения DateTime. Метод FromBinary декодирует значение. Ознакомьтесь с документацией об этих методах для возможной корректировки декодированных значений, если сохраняется значение DateTime не в формате UTC.
Особенности реализации для платформ
Все данные хранятся в объекте SharedPreferences. Если свойство sharedName не указано, используются общие настройки по умолчанию. В противном случае используется имя для получения частных общих настроек с указанным именем.
Сохраняемость
Удаление приложения приводит к удалению всех настроек за одним исключением: приложения, которые выполняются на платформе Android 6.0 (API уровня 23) или более поздних версий и используют автоматическое резервное копирование. Эта функция включена по умолчанию и сохраняет данные приложения, включая общие параметры, которые использует API параметров. Ее можно отключить, выполнив следующие шаги в документации Google.
Ограничения
При сохранении строки этот API сохраняет небольшие блоки текста. Производительность может быть низкой, если сохранять большие объемы текста.