Web3 ReactNative Error 此浏览器不支持安全随机数生成

Web3 ReactNative Error Secure random number generation is not supported by this browser

我创建 RN 钱包应用程序,添加 web3 以生成以太坊帐户,并按照说明 https://levelup.gitconnected.com/tutorial-how-to-set-up-web3js-1-x-with-react-native-0-6x-2021-467b2e0c94a4

转账 coin/token

但是我得到一个错误:

Error: Secure random number generation is not supported by this browser. Use Chrome, Firefox or Internet Explorer 11

此外,使用 https://medium.com/@talaikis/react-native-0-60-4-with-web3-js-1-2-0-8090a1decee2

进行测试

甚至添加 https://www.npmjs.com/package/expo-random 包但同样的问题。

请注意,在浏览器中调试时工作正常,但在真实手机上不工作。

React 有一个单独的 csprng 包。

用它来生成 16 个字节的随机数并将其传递给 bip39.entropyToMnemonic 它会给你 12 个单词的短语。如果你想要 24 个字,则为 32 个字节。我认为它被称为 rn-randombytes。

我的问题在添加 https://www.npmjs.com/package/react-native-crypto 包并更改以下行后得到解决

require('crypto');

// to 

import crypto from 'crypto'