TypeError:null 不是对象(评估“RNKeychainManager.SECURITY_LEVEL_ANY”)
2020-06-26
4090
我将在我的 RN 项目中使用 react-native-keychain 库,但似乎无法在本地运行。
RN:0.61.5
react-native-keychain:“6.1.1”,
我试图喜欢这个。
.......
const MEMORY_KEY_PREFIX = '@MyStorage:'
let dataMemory = {}
class MyStorage {
static syncPromise = null
static setItem(key, value) {
Keychain.setGenericPassword(MEMORY_KEY_PREFIX + key, value)
dataMemory[key] = value
return dataMemory[key]
}
static getItem(key) {
return Object.prototype.hasOwnProperty.call(dataMemory, key) ? dataMemory[key] : undefined
}
static removeItem(key) {
Keychain.resetGenericPassword()
return delete dataMemory[key]
}
static clear() {
dataMemory = {}
return dataMemory
}
}
.......
但我遇到了问题。
TypeError:null 不是对象(评估“RNKeychainManager.SECURITY_LEVEL_ANY”)
有没有什么解决方案可以解决这个问题?
谢谢
2个回答
当我尝试打开多个 iOS 模拟器时,我收到此错误。我不确定你的情况是否与我遇到的情况相同。
对我来说,修复方法是:
-
关闭所有 iOS 模拟器
-
在模拟器上专门运行 react-native 项目。
-
yarn ios --simulator="iphone 8"
- 将在 iPhone 8 中运行应用程序 -
yarn ios --simulator="iphone 11"
- 将在 iPhone 11 中运行应用程序
-
要列出所有可用的设备模拟器,您可以运行
xcrun simctl list devices
PS:软件包存储库中有一个问题,出现类似的错误,您可能需要查看一下: https://github.com/oblador/react-native-keychain/issues/221
Indra Lukmana
2020-07-06
你可以修复它:
在 Podfile 中设置
pod 'RNKeychain', :path => '../node_modules/react-native-keychain'
或
use_native_modules!
然后运行
pod install
Tatsiana
2020-10-23