Доступ к NSUserDefaults из приложения React Native на iOS

#ios #react-native #expo #airwatch

#iOS #реагировать-родной #выставка #воздушный дозор #react-native #airwatch

Вопрос:

У меня есть приложение React Native, которое использует ExpoKit. При необходимости я могу извлечь.

Я хочу получить доступ к объекту NSUserDefaults, чтобы прочитать значение, переданное AirWatch — системой управления мобильными устройствами. По сути, приложение запускается в управляемой среде, а настройки передаются через NSUserDefaults.

Я не смог использовать React Native Settings (https://facebook.github.io/react-native/docs/settings ), так как это выдает мне ошибку о том, что внутренний _settings объект не определен при попытке доступа this._settings[t] .

Как использовать этот модуль настроек или что я должен сделать, чтобы получить доступ к этому объекту настроек?

Комментарии:

1. Похоже, вам нужно вызвать Settings.get(t), чтобы получить значение.

2. Вызов @SachinVas Settings.get("my_key") — это то, что я пытался сделать, и это выдает мне ошибку о том, что _settings значение не определено. Удалось ли вам Settings.get() успешно использовать?

Ответ №1:

Проверьте свои модули, вам, скорее всего, не хватает подспецификации «RCTSettings» для модуля «React», он не был добавлен во время извлечения.. что действительно странно.

Вот как это выглядит для меня:

   pod 'React',
:path => "../node_modules/react-native",
:inhibit_warnings => true,
:subspecs => [
  "Core",
  "ART",
  "RCTActionSheet",
  "RCTAnimation",
  "RCTCameraRoll",
  "RCTGeolocation",
  "RCTImage",
  "RCTNetwork",
  "RCTText",
  "RCTVibration",
  "RCTWebSocket",
  "RCTSettings",
  "DevSupport",
  "CxxBridge"
]