Unity 6.3
0 онлайн 63 гостей 3 в системе
Вход

PlayerPrefs

класс в UnityEngine

Выполнено в:UnityEngine.CoreModule

Описание

PlayerPrefs — это класс, хранящий настройки игрока между игровыми сеансами. Он может записывать строковые, вещественные и целочисленные значения в реестр платформы пользователя.

Unity хранит PlayerPrefs в локальном реестре без шифрования. Не используйте данные PlayerPrefs для хранения конфиденциальной информации.

Способ хранения данных PlayerPrefs в Unity зависит от операционной системы, в которой работает приложение. В путях к файлам на этой странице ExampleCompanyName, ExampleProductName и ExampleBundleIdentifier обозначают имена, заданные в разделе Unity Настройки Игрока.

Расположение хранилища Standalone Player

- Android: /data/data/pkg-name/shared_prefs/pkg-name.v2.playerprefs.xml.

Примечания:

  • Unity использует SharedPreferences API для доступа к данным PlayerPrefs и SharedPreferences.Editor API для их модификации.
  • C#, Android Java и нативный код могут получить доступ к данным PlayerPrefs.

- iOS: Использует [NSUserDefaults standardUserDefaults] API хранить PlayerPrefs данные.

- Linux: ~/.config/unity3d/ExampleCompanyName/ExampleProductName

- macOS: ~/Library/Preferences/ExampleBundleIdentifier.plistЗначение по умолчанию ExampleBundleIdentifier является com.ExampleCompanyName.ExampleProductName. Переопределить это значение из macOS Настройки плеера.

- Веб: Unity хранит до 1МБ PlayerPrefs данные с помощью браузера IndexedDB API. Более подробную информацию см. IndexedDB.

- Windows: Computer\HKEY_CURRENT_USER\Software\ExampleCompanyName\ExampleProductName в редакторе реестра.

- Windows Универсальная платформа: %userprofile%\AppData\Local\Packages\[ProductPackageId]\LocalState\playerprefs.dat

Место хранения режима воспроизведения в редакторе

- macOS: ~/Library/Preferences/com.ExampleCompanyName.ExampleProductName.plist

- Windows: Computer\HKEY_CURRENT_USER\Software\Unity\UnityEditor\ExampleCompanyName\ExampleProductName Обратите внимание, что Windows использует имена ключей из приложения PlayerPrefs как хэшированный идентификатор. Например, Unity добавляет a DeckBase строка для хешированного имени ключа (например, h3232628825) для создания DeckBase_h3232628825. Unity хеширует имена, потому что:

  • Позволяет Unity хранить имена ключей с учетом регистра.
  • Предотвращает конфликты имен с данными, которые приложение хранит вне PlayerPrefs.
  • Обеспечивает использование PlayerPrefs API для доступа к значениям и их изменения.

Приложение игнорирует расширение.

Статические методы

Метод Описание
DeleteAllУдаляет все ключи и значения из настроек. Используйте с осторожностью.
DeleteKeyУдаляет указанный ключ из PlayerPrefs. Если ключ не существует, DeleteKey не имеет никакого влияния.
GetFloatВозвращает значение с плавающей запятой, которое соответствует ключу в настройках проигрывателя.
GetIntПолучает int значение, которое соответствует ключу в настройках проигрывателя.
GetStringПолучает строку, соответствующую ключу в настройках проигрывателя.
HasKeyВозвращает true, если заданный ключ существует в PlayerPrefs, в противном случае возвращает false.
SaveСохраняет все измененные настройки.
SetFloatУстанавливается значение с плавающей запятой настройки, идентифицируемой данным ключом. Вы можете использовать PlayerPrefs.GetFloat для получения этого значения.
SetIntЗадает одно целое значение для настройки, идентифицируемой данным ключом. Вы можете использовать PlayerPrefs.GetInt для получения этого значения.
SetStringЗадает одно строковое значение для настройки, идентифицируемой данным ключом. Вы можете использовать PlayerPrefs.GetString для получения этого значения.